gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

用vue寫的頁面后綴名是什么

用vue寫的頁面后綴名是“.vue”。“.vue”文件是一個自定義的文件類型,用類HTML語法描述一個Vue組件;一個vue文件就是一個組件。vue頁面有3個組成部分:1、模板(template),即template標簽包裹的界面展示代碼(HTML代碼);2、script標簽包裹的業務實現代碼(js腳本代碼);3、style標簽包裹的界面樣式代碼(css樣式代碼)。

用vue寫的頁面后綴名是什么

本教程操作環境:windows7系統、vue3版,DELL G3電腦。

用vue寫的頁面后綴名是“.vue”。

.vue 文件是一個自定義的文件類型,用類 HTML 語法描述一個 Vue 組件。每個 .vue 文件包含三種類型的頂級語言塊 <template>、<script> 和 <style>,還允許添加可選的自定義塊:

<template>   <div class="example">{{ msg }}</div> </template>  <script> export default {   data () {     return {       msg: 'Hello world!'     }   } } </script>  <style> .example {   color: red; } </style>  <custom1>   This could be e.g. documentation for the component. </custom1>
登錄后復制

組件結構講解

  • 把每個組件都放到一個獨立的.vue文件里,

  • 文件的后綴是:.vue 文件

  • 此文件三大部分: templatescriptstyle

  • template

    • 寫html結構的

    • 注意這里的html部分必須用一個標簽全包住

  • script

    • 寫邏輯的,data、methods、生命周期鉤子、計算屬性等等代碼都寫在這個部分

    • 注意這里的data不再是一個對象,在組件里,data將會是一個函數,return一個對象。

  • style

    • 寫樣式的

    • 如何 導入外部css,

      • 在css中的導入(主體使用):

       @import url(./babel.css);
      登錄后復制

  • 快捷鍵快速生成: <vue>

  • 單文件組件的運行

    在cmd窗口該vue文件根目錄下輸入vue serve index.vue 這里index.vue是需要運行的單文件組件的路徑

    vue serve index.vue
    登錄后復制

    注意點

    • template里面的html部分必須用一個標簽全包住

    • 組件里沒有el,組件是無需掛載到哪的,里面已經有template是它的使用的html了

    • data在組件里面是一個function,return 一個對象

<template>   <!-- 組件html區域    在組件里面的html都必須有一個獨立的標簽包住所有標簽   -->   <div>     <button>按鈕</button>     <button>{{msg}}</button>   </div> </template>  <script> export default {   // 不再需要el去確定使用范圍   // 組件 里面的data將是一個函數 return一個對象   //data:function(){return {}}   data() {     return {       msg: "hello"     };   },   methods: {     alertEvent(value) {       alert(value);     }   },   created() {       //這里面語法檢測比較嚴格,直接寫console會報錯     window.console.log(this);     // this.alertEvent(123);   } }; </script>  <style> /* 如果需要引入 外部css  在css中的導入:  @import url(./babel.css);  在js中的導入  import "./babel.css" */ /* @import url(./babel.css); */ @import "./babel.css"; button {   width: 100px; } </style>
登錄后復制

如何在組件中引入其它組件

如何在一個組件中引入其它組件,實現一個組裝。

組件的使用三步

  • 1:導入組件

    • import 自定義的一個組件名 from "組件路徑";

    • 注意點,這里組件路徑就算是當前同一目錄也最好加上"./組件名",不然會報錯

  • 2:注冊組件

    • 組件的使用是需要注冊的,注冊方式為:

      export default {   components: {     組件名,     //注冊的組件都寫在components對象下。   } }
      登錄后復制

  • 3:使用組件(寫到相應html位置即可)

        <組件名></組件名>   //該組件名來自于在組件注冊時的組件名
    登錄后復制

    <template>   <div class="main">     <!-- 使用組件  -->     <!-- 在這index.vue是父組件,top,middle,bottom是子組件 -->     <!-- top與middle是兄弟組件 -->     <top></top>     <middle></middle>     <bottom></bottom>   </div> </template> <script> // 導入組件  這里面top,middle,bottom是需要另外創建的vue組件,這里是沒創建的 import top from "./top.vue"; import middle from "./middle.vue"; import bottom from "./bottom.vue";  export default {   // 組件注冊   components: {     top, //相當于top:top     middle,     bottom   } }; </script> <style> .main {   width: 100%; } .main img {   width: 100%; } </style>
    登錄后復制

    組件中如何使用外部插件

    以axios為例

    使用外部插件分為三步

    • 裝包(安裝外部插件)

      npm i axios //到相應目錄下執行該命令
      登錄后復制

    • 導包(在單文件組件中導入外部插件)

      import axios from "axios"
      登錄后復制

    • 用包(在相應代碼位置使用)

      使用和以前一樣,該怎么用還是怎么用

      axios({ url:"xxx" }).then(res=>{ })
      登錄后復制

      DEMO

      <template>   <div>     <input type="text" v-model="searchValue" />     <button @click="getMusic">點我</button>     <ul>       <li v-for="(item, index) in songs" :key="index">{{item.name}}</li>     </ul>   </div> </template> <script> // 使用axios   1:安裝axios,npm i axios   2:導包  import axios from "axios"  3:使用 // 導包 import axios from "axios"; export default {   data() {     return {       searchValue: "", //input框的值       songs: []     };   },   methods: {     getMusic() {       // 使用,以前怎么用,現在還怎么用       axios({         url: "https://autumnfish.cn/search?keywords=" + this.searchValue,         method: "get"       }).then(res => {         this.songs = res.data.result.songs;         window.console.log(this.songs);       });     }   } }; </script> <style> </style>
      登錄后復制

    組件間的傳值

    如果A組件中引入了B組件 ,這樣我們稱A組件為父組件,B為子組件

    父組件傳值給子組件

    • 在子組件標簽上定義一個ref屬性

        <組件名 ref="xxx"></組件名>
      登錄后復制

    • 在需要給子組件傳值的地方寫入:

      this.$refs.xxx   //這就代表了子組件xxx的vue實例 //這里xxx代碼標簽中定義的ref屬性名這里就可訪問到子組件里面的data屬性與methods方法 //如要修改子組件里面data里的某個值:          this.$refs.xxx.子組件里data屬性名 //如果需要調用子組件里面methods里某個方法:   this.$refs.xxx.子組件里面methods里方法名
      登錄后復制

    子組件傳值給父組件

        this.$parent    //這就代表父組件的vue實例     //如要修改父組件里面data里的某個值:         this.$parent.父組件里data屬性名     //如果需要調用父組件里面methods里某個方法:   this.$parent.父組件里面methods里方法名
    登錄后復制

    //兩個組件,這個是father.vue <template>   <div>     <button @click="btnClick">點我獲取數據</button>     <div>你選中的當前歌曲:{{localSong}}</div>     <son ref="son" id="son"></son>   </div> </template> <script> // 組件使用,導包,注冊,使用 //1:導包 import axios from "axios"; import son from "./son.vue"; export default {   data() {     return {       songs: [],       localSong: ""     };   },     //2:注冊   components: {     son   },   methods: {     btnClick() {       window.console.log("ref訪問:", this.$refs.son.$el);       window.console.log("原生訪問:", document.getElementById("son"));       //要調接口,是不是要使用axios       //裝包,導包,用包       axios({         url:           "https://autumnfish.cn/search?keywords=神話&_t=" + Math.random() * 100       }).then(res => {         //   父組件傳遞子組件值,在子組件上定義一個ref,通過this.$refs.名字,我們就能訪問子組件的實例,也就是可訪問子組件data屬性與methods方法         this.$refs.son.songs = res.data.result.songs;         this.$refs.son.alertEvent();         window.console.log(res.data.result.songs);       });     }   } }; </script> <style> </style> //son.vue <template>   <ul>     <li v-for="(item, index) in songs" :key="index" @click="liCLick(item.name)">{{item.name}}</li>   </ul> </template> <script> // 子組件訪問父組件里的data與methods更簡單,只需要this.$parent就夠了 export default {   data() {     return {       songs: []     };   },   methods: {     liCLick(name) {       this.$parent.localSong = name;       window.console.log("訪問父組件:", name, this.$parent);     },     alertEvent() {       alert(123);     }   } }; </script> <style> </style>
    登錄后復制

    Vue-cli項目創建

    直通車

    什么是腳手架

    • 腳手架就是個項目模板 , 相當于把整個文件基本目錄結構搭好了,把必要的文件也建好 了,讓我們省了很多事情。

    創建項目:

    • 創建時路徑不要選錯,就是命令的路徑要是需要創建項目的文件夾下

      • 完美選擇不出錯路徑方法:在文件夾相應路徑下的地址欄輸入cmd —再 回車

    • 運行創建命令

      vue create 項目名      //這里項目名不要有中文,不要有大寫字母,不要搞特殊符號,盡可能有意義 ,像普通變量命名一樣
      登錄后復制

    • 彈出的對話框先選擇默認的選項(如下圖)

    用vue寫的頁面后綴名是什么

    • 稍等一會,等進度條走完 提示如下畫面說明成功了,如下圖:

    用vue寫的頁面后綴名是什么

    • 進入項目文件夾(就是項目名的文件夾)

      • cd 項目名 直接根據提示即可
        登錄后復制

    • 運行項目(根目錄,readme同級目錄)

      • npm run serve
        登錄后復制

    • 稍等片刻 ,出現如下效果說明成功了

    用vue寫的頁面后綴名是什么

    Vue-cli項目結構

    項目結構說明:

    用vue寫的頁面后綴名是什么

    • node_modules 第三方模塊包,也就是項目所需要用到的依賴包

    • public

      • favicon.ico 運行項目時在網頁上顯示 的小圖標

      • index.html 項目的頁面模板 ,也就是項目運行最開始,是先執行這個模板html的

    • src 項目開發主體就是在這個src目錄下面

      • assets 項目所需要的靜態資源,如css,圖片等文件

      • components 項目中的單文件組件都放這里

      • App.vue 入口組件 ,可以理解為一個項目就是一個app.vue的單文件組件,只不過里面包括了很多小組件

      • main.js 入口js文件,進入項目會優先執行main.js以此來運行app.vue

    • .gitignore 讓git忽略某些文件,文件夾

    • babel.config.js js編譯的設置,比如把高版本的js轉為低版本的js,讓項目達到更好兼容性

    • package-lock.json 項目模塊詳細信息,包括來源。

    • package.json 項目基本信息

    • README.md 項目說明

    Vue-cli 入口文件main.js分析

    • main.js

      • 創建了最外層的Vue實例

      • App.vue這個組件,當做Vue實例內部的最頂級組件并渲染到index.html上去

      最后我們看到的整個網站其實就是App.vue

    贊(0)
    分享到: 更多 (0)
    ?
    網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
    gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
    日产精品久久久久久久蜜臀| 国产极品粉嫩福利姬萌白酱| 国产主播在线看| 佐佐木明希av| 色撸撸在线观看| 中文字幕第一页在线视频| 美女网站免费观看视频| 欧美 国产 综合| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 久草免费福利在线| 亚洲精品无码国产| 中文字幕无码精品亚洲35| 超碰成人免费在线| 日韩a∨精品日韩在线观看| 欧美黄网在线观看| 亚洲熟妇无码另类久久久| 黄色国产一级视频| 国产v亚洲v天堂无码久久久| 亚洲国产精品三区| 天天久久综合网| 800av在线免费观看| 无码人妻精品一区二区三区在线| 不要播放器的av网站| 色婷婷.com| av日韩在线看| 天天爽人人爽夜夜爽| 黄色a级三级三级三级| 欧美在线观看黄| 成年网站在线免费观看| 成年网站免费在线观看| 青青草原网站在线观看| 日韩精品―中文字幕| 污污的视频免费| 福利视频一二区| 色www免费视频| 成人性免费视频| 午夜久久福利视频| 69堂免费视频| 三级网在线观看| 成人在线激情网| 免费特级黄色片| 久久久久久蜜桃一区二区| 日韩在线观看a| 欧美 日韩 国产 在线观看| av之家在线观看| 女同性恋一区二区| 亚洲欧美国产日韩综合| 精品视频在线观看一区| 亚洲综合20p| 精品久久久久久久无码| 黄色激情在线视频| 国产又爽又黄ai换脸| 日本熟妇人妻中出| 黄色影院一级片| 免费看毛片的网址| 国产一二三四区在线观看| 最新天堂中文在线| 国产视频一区二区三区在线播放 | 51xx午夜影福利| 午夜啪啪小视频| 亚洲欧美激情网| 成人精品视频一区二区| 欧美日韩黄色一级片| 成人在线视频一区二区三区| 深夜做爰性大片蜜桃| 久久久久久久久久久久久久久国产| av天堂永久资源网| 日韩 欧美 高清| 国产激情在线观看视频| av免费中文字幕| 免费男同深夜夜行网站| 超碰网在线观看| 亚洲精品怡红院| 男女污污的视频| www.色欧美| 亚欧精品在线视频| 国产成人免费高清视频| 97在线免费视频观看| 黄色片免费在线观看视频| 久久久久久久香蕉| 色综合久久久久无码专区| 国产精品秘入口18禁麻豆免会员| 波多野结衣家庭教师视频| 精品少妇无遮挡毛片| 午夜剧场在线免费观看| 久久久国产精华液999999 | av污在线观看| 成人综合久久网| 国产精品免费看久久久无码| 亚洲熟妇av日韩熟妇在线| 性欧美极品xxxx欧美一区二区| 成 人 黄 色 小说网站 s色| 艳母动漫在线观看| 美女黄色片视频| 亚洲视频在线不卡| 免费在线观看亚洲视频| 青娱乐国产精品视频| 欧美日韩国产精品激情在线播放| 凹凸国产熟女精品视频| 女人高潮一级片| www.99热这里只有精品| 污视频网站观看| 97视频久久久| 亚洲一二三不卡| 欧美在线一区视频| 亚洲第一成肉网| 国产精品少妇在线视频| 国产欧美123| 午夜免费看视频| 国产欧美日韩网站| av中文字幕网址| 久久人妻精品白浆国产 | 黄色a级片免费| avav在线播放| 欧美日韩久久婷婷| www.天天射.com| 91免费黄视频| 欧美极品少妇无套实战| 亚洲18在线看污www麻豆| 国产一区二区三区精彩视频| 狠狠精品干练久久久无码中文字幕 | a在线观看免费视频| 日韩精品一区在线视频| 女女百合国产免费网站| 日本中文字幕二区| 污污的网站18| 在线观看亚洲色图| 国产一区视频免费观看| 国产一区二区三区精彩视频| 激情五月婷婷六月| 欧美 亚洲 视频| 国产精品视频一二三四区| 99热这里只有精品7| 天天爱天天做天天操| 一级黄色免费在线观看| 99亚洲精品视频| 成年人三级视频| 欧美大黑帍在线播放| 黑人巨茎大战欧美白妇| 免费成人进口网站| 91网站在线观看免费| 69精品丰满人妻无码视频a片| 黄色特一级视频| 大陆极品少妇内射aaaaa| 青青青免费在线| 韩国中文字幕av| 手机在线视频一区| 麻豆视频传媒入口| 男女猛烈激情xx00免费视频| 无罩大乳的熟妇正在播放| 黑森林福利视频导航| 国产喷水theporn| 法国空姐在线观看免费| 美脚丝袜脚交一区二区| 中国丰满人妻videoshd| 日韩一级免费片| 国产资源第一页| 99福利在线观看| 日韩a一级欧美一级| 2018日日夜夜| 日本美女高潮视频| 国产成人一二三区| 国产v亚洲v天堂无码久久久| 欧美视频国产视频| 五十路熟女丰满大屁股| 中文字幕第80页| 久久艹国产精品| 超碰人人草人人| 男人添女人下面高潮视频| 爱情岛论坛成人| 久久久亚洲国产精品| 最新天堂中文在线| av免费观看网| 亚洲热在线视频| 久久九九国产视频| 精品人妻人人做人人爽| 天堂视频免费看| 亚洲成熟丰满熟妇高潮xxxxx| 国内外成人激情免费视频| 天天干天天草天天| 18禁男女爽爽爽午夜网站免费| 免费黄频在线观看| 久草综合在线观看| 欧美久久久久久久久久久久久| 欧美视频国产视频| 91精品无人成人www| 国产精品丝袜久久久久久消防器材| 国内av免费观看| 午夜视频在线网站| caoporn超碰97| 欧在线一二三四区| 日日橹狠狠爱欧美超碰| av在线观看地址| 国产制服91一区二区三区制服| 99999精品| 亚洲 欧洲 日韩| 欧美性受xxxx黒人xyx性爽| 美女网站色免费| 婷婷激情5月天| 毛毛毛毛毛毛毛片123|