最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue的Options用法說明

 更新時間:2020年08月14日 11:40:21   作者:過程是風(fēng)景  
這篇文章主要介紹了Vue的Options用法說明,具有很好的參考價值,希望對大家有所

el:掛載點(diǎn)

與$mount有替換關(guān)系

new Vue({
 el: "#app"
});

new Vue({}).$mount('#app')

注:被你選為掛載點(diǎn)的那個元素,如果在index.html里那個元素里面本來就有內(nèi)容,在渲染時會消失(網(wǎng)速慢可以看到),被這個vue實(shí)例的對應(yīng)內(nèi)容所覆蓋。

data:內(nèi)部數(shù)據(jù)

支持對象和函數(shù),優(yōu)先用函數(shù)

new Vue({
 //優(yōu)先使用函數(shù)
 data() {
  return {
   n: 0,
  }
 }
}).$mount("#app");

注:能寫函數(shù)盡量寫函數(shù),否則有可能有BUG;

methods:方法

事件處理函數(shù)

new Vue({
   data (){
    return{
      n:0
    }
   },
  template:`
    <div class="red">
      {{n}}
      <button @click="add">+1</button>
    </div>
  `,
 //add必須寫到methods里面
  methods:{
     add(){
       this.n+=1
     }
  }
}).$mount('#app')

普通函數(shù):methods代替filter

import Vue from "vue";
Vue.config.productionTip = false;

new Vue({
 data() {
  return {
   n: 0,
   array: [1, 2, 3, 4, 5, 6, 7, 8]
  };
 },
 template: `
 <div class=red>
 {{n}}
 <button @click="add">+1</button> //事件處理函數(shù)
 <hr>
 {{filter()}}  //普通函數(shù)(JS的filter直接在視圖里調(diào)用,每一次更新渲染都會調(diào)用一次)
 </div>
 `,//主動在模板里面調(diào)用
 methods: {
  add() {
   this.n += 1; //事件處理函數(shù)
  },
  filter() {
   return this.array.filter(i => i % 2 === 0); //普通函數(shù)
  }
 }
}).$mount("#app");

components:方法

使用Vue組件,注意大小寫

(建議用法) 模塊化:

新建一個vue文件Demo.vue,這個vue文件就是一個組件

在main.js中引入這個vue文件

在vue實(shí)例的components中聲明這是我要用的組件,并且命名為Demo

這樣在這個Vue實(shí)例的template中就可以直接使用這個組件<Demo/>

import Vue from "vue";
import Demo from "./Demo.vue"; //引入這個vue文件  ---文件名最好小寫 組件名最好大寫
Vue.config.productionTip = false;

new Vue({
 components: {
  Demo //在vue實(shí)例的components中聲明這是我要用的組件,并且命名為Demo
  //如果組件名就叫Demo,即Demo:Demo,那就寫Demo --ES6縮寫
  //components: {Demo},
 },
 data() {
  return {
   n: 0
  };
 },
 template: `
 <div class=red>
 {{n}}
 <button @click="add">+1</button>
 <Demo/>  //這樣在這個Vue實(shí)例的template中就可以直接使用這個組件`<Demo/>`
 </div>
 `,
 methods: {
  add() {
   this.n += 1;
  },
 }
}).$mount("#app");

四個鉤子

created -- 實(shí)例出現(xiàn)在內(nèi)存中后觸發(fā)
created(){
     debugger
     console.log('這玩意出現(xiàn)在內(nèi)存中')
  },

mounted-- 實(shí)例出現(xiàn)在頁面中(掛載了)后觸發(fā)

 mounted(){
  debugger
     console.log('這玩意兒已出現(xiàn)在頁面中')
  },

updated -- 實(shí)例更新了后觸發(fā)

updated(){
     console.log('更新了')
    console.log(this.n) 
  },
 //當(dāng)你+1的時候,能證明他在更新的時候觸發(fā),還可以拿到最新的n

destroyed -- 實(shí)例從頁面和內(nèi)存中消亡了后觸發(fā)

props:外部屬性

外部來傳值

message="n"傳入字符串

:message="n"傳入vue實(shí)例的this.n數(shù)據(jù)

:fn="add"傳入vue實(shí)例的this.add函數(shù)

示例

補(bǔ)充知識:vue $options初始化

vue實(shí)例化時,對$options進(jìn)行初始化

vue/src/core/instance/init.js

 Vue.prototype._init = function (options?: Object) {
  const vm: Component = this
  // a uid
  vm._uid = uid++

  let startTag, endTag
  /* istanbul ignore if */
  if (process.env.NODE_ENV !== 'production' && config.performance && mark) {
   startTag = `vue-perf-start:${vm._uid}`
   endTag = `vue-perf-end:${vm._uid}`
   mark(startTag)
  }

  // a flag to avoid this being observed
  vm._isVue = true
  // merge options
  if (options && options._isComponent) {
   // optimize internal component instantiation
   // since dynamic options merging is pretty slow, and none of the
   // internal component options needs special treatment.
   initInternalComponent(vm, options)
  } else {
  //初始化$options
   vm.$options = mergeOptions(
    resolveConstructorOptions(vm.constructor),
    options || {},
    vm
   )
  }
  /* istanbul ignore else */
  if (process.env.NODE_ENV !== 'production') {
   initProxy(vm)
  } else {
   vm._renderProxy = vm
  }
 }
}

以上這篇Vue的Options用法說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue項(xiàng)目中常用的實(shí)用技巧匯總

    Vue項(xiàng)目中常用的實(shí)用技巧匯總

    如果說是JQuery是手工作坊,那么Vue.js就像是一座工廠,雖然Vue.js做的任何事情JQuery都可以做,但無論是代碼量還是流程規(guī)范性都是前者較優(yōu),這篇文章主要給大家匯總介紹了關(guān)于Vue項(xiàng)目中常用的實(shí)用技巧,需要的朋友可以參考下
    2021-07-07
  • Vue3中局部組件和全局組件的使用教程詳解

    Vue3中局部組件和全局組件的使用教程詳解

    這篇文章主要為大家學(xué)習(xí)介紹了Vue3中局部組件和全局組件的使用方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的小伙伴可以學(xué)習(xí)一下
    2023-07-07
  • vue項(xiàng)目使用node連接數(shù)據(jù)庫的方法(前后端分離)

    vue項(xiàng)目使用node連接數(shù)據(jù)庫的方法(前后端分離)

    這篇文章主要介紹了vue項(xiàng)目使用node連接數(shù)據(jù)庫(前后端分離),本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • vue實(shí)現(xiàn)簡單的購物車小案例

    vue實(shí)現(xiàn)簡單的購物車小案例

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)簡單的購物車小案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 分享9個Vue的巧妙冷技巧

    分享9個Vue的巧妙冷技巧

    這篇文章主要介紹了分享9個Vue的巧妙冷技巧,文章首先通過巧用$attrs和$listeners的技巧展開,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • 十分鐘封裝一個好用的axios步驟示例

    十分鐘封裝一個好用的axios步驟示例

    這篇文章主要為大家介紹了十分鐘封裝一個好用的axios步驟示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實(shí)例PK )

    Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實(shí)例PK )

    這篇文章主要介紹了Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實(shí)例PK ),非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • vue?動態(tài)添加el-input的實(shí)現(xiàn)邏輯

    vue?動態(tài)添加el-input的實(shí)現(xiàn)邏輯

    這篇文章主要介紹了vue?動態(tài)添加el-input的實(shí)現(xiàn)代碼,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • 如何解決ElementPlus的el-table底白線問題

    如何解決ElementPlus的el-table底白線問題

    這篇文章主要介紹了如何解決ElementPlus的el-table底白線問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 在vue3.0中封裝button使用slot組件

    在vue3.0中封裝button使用slot組件

    這篇文章主要介紹了在vue3.0中封裝button使用slot組件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05

最新評論

汽车| 松桃| 亚东县| 博乐市| 祁门县| 慈溪市| 乐陵市| 海丰县| 南川市| 蓝田县| 寻乌县| 潞城市| 廊坊市| 蛟河市| 海丰县| 固原市| 文水县| 西充县| 巴马| 巴马| 梁山县| 广宗县| 梁平县| 资中县| 禄劝| 株洲市| 南和县| 东宁县| 金堂县| 云安县| 共和县| 奈曼旗| 商南县| 娱乐| 金塔县| 耒阳市| 安吉县| 临猗县| 随州市| 阳江市| 塔河县|