欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue的Options用法說明

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

el:掛載點

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

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

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

注:被你選為掛載點的那個元素,如果在index.html里那個元素里面本來就有內(nèi)容,在渲染時會消失(網(wǎng)速慢可以看到),被這個vue實例的對應(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實例的components中聲明這是我要用的組件,并且命名為Demo

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

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

new Vue({
 components: {
  Demo //在vue實例的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實例的template中就可以直接使用這個組件`<Demo/>`
 </div>
 `,
 methods: {
  add() {
   this.n += 1;
  },
 }
}).$mount("#app");

四個鉤子

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

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

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

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

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

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

props:外部屬性

外部來傳值

message="n"傳入字符串

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

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

示例

補充知識:vue $options初始化

vue實例化時,對$options進行初始化

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+Openlayer使用modify修改要素的完整代碼

    Vue+Openlayer使用modify修改要素的完整代碼

    這篇文章主要介紹了Vue+Openlayer使用modify修改要素的完整代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • vue后臺管理如何配置動態(tài)路由菜單

    vue后臺管理如何配置動態(tài)路由菜單

    這篇文章主要介紹了vue后臺管理如何配置動態(tài)路由菜單,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue2遷移Rsbuild詳細步驟

    Vue2遷移Rsbuild詳細步驟

    Rsbuild,一個基于Rspack的高效Web構(gòu)建工具,將Rspack的強大功能與易用性相結(jié)合,是你項目搭建的不二之選,Rsbuild不僅提供了開箱即用的體驗,還引入了高性能的構(gòu)建機制,本文給大家介紹了Vue2遷移Rsbuild詳細步驟,需要的朋友可以參考下
    2024-10-10
  • vue中props賦值給data出現(xiàn)的問題及解決

    vue中props賦值給data出現(xiàn)的問題及解決

    這篇文章主要介紹了vue中props賦值給data出現(xiàn)的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue+NodeJS實現(xiàn)大文件上傳的示例代碼

    Vue+NodeJS實現(xiàn)大文件上傳的示例代碼

    常見的文件上傳方式可能就是new一個FormData,把文件append進去以后post給后端就可以了。但如果采用這種方式來上傳大文件就很容易產(chǎn)生上傳超時的問題。所以本文將利用Vue+NodeJS實現(xiàn)大文件上傳,需要的可以參考一下
    2022-05-05
  • vue3+pinia的快速入門使用教程

    vue3+pinia的快速入門使用教程

    Pinia是Vue的一個存儲庫,它允許你跨組件/頁面共享狀態(tài),下面這篇文章主要給大家介紹了關(guān)于vue3+pinia的快速入門使用,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • 詳解 vue.js用法和特性

    詳解 vue.js用法和特性

    Vue.js目前已經(jīng)更新到2.x,功能和語法上有一定升級和修改,本文首先介紹基礎(chǔ)內(nèi)容。感興趣的朋友一起看看吧
    2017-10-10
  • vue中多個文件下載實現(xiàn)打包壓縮下載示例

    vue中多個文件下載實現(xiàn)打包壓縮下載示例

    這篇文章主要為大家介紹了vue中多個文件下載實現(xiàn)打包壓縮下載的發(fā)發(fā)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • vue3 setup點擊跳轉(zhuǎn)頁面的實現(xiàn)示例

    vue3 setup點擊跳轉(zhuǎn)頁面的實現(xiàn)示例

    本文主要介紹了vue3 setup點擊跳轉(zhuǎn)頁面的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • Vue模仿ElementUI的form表單實例代碼

    Vue模仿ElementUI的form表單實例代碼

    這篇文章主要給大家介紹了關(guān)于Vue模仿ElementUI的form表單的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03

最新評論