亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Vue -- Mixin

LeviDing / 2517人閱讀

摘要:有兩個非常相似的組件,他們的基本功能是一樣的,可以局注冊一個混合,影響注冊之后所有創(chuàng)建的每個實例,這就是。全局下注冊比如在構建的項目中,中定義了一個并且掛載在實例上,那么在實例下的每個組件都會在掛載的時候執(zhí)行一次這個方法,輸出多次

mixins

mixin: 有兩個非常相似的組件,他們的基本功能是一樣的,可以局注冊一個混合,影響注冊之后

所有創(chuàng)建的每個 Vue 實例,這就是mixin。

Mixin對編寫函數式風格的代碼很有用,一般情況下不會改變函數作用域外部的任何東西,輸入相同,得到的結果也一定相同。

基礎用法

新建一個mixin.js 文件,

 minix.js
  
 export const myminix= {
       data(){
           return {
           }
       },
       mounted(){
          this.sayhello();
       },
       created(){

       },
       methods:{
           sayhello:function(){
              console.log("hello from myMinix!");
           }
       }
}

一個簡單的方法,在組件被掛載后 輸出 “hello”,

然后在想要使用這個公共方法的組件中引入進去。

other.vue

script:

export default {
 mixins:[myminix],
}

這樣引入后的效果,就是在other的組件中,同樣加入了sayhello() 方法

other.vue

script:

export default {
    mounted(){
              this.sayhello();
           },
    methods:{
           sayhello:function(){
              console.log("hello from myMinix!");
           }
}

//output  "hello from myMinix"

在other 組件被掛載后,輸出hello from myMinix,

沖突

到這里,會有一個問題,如果other.vue 本身也有同樣是操作掛載在mounted 上,到底誰會先執(zhí)行,

other.vue

script:

export default {
    mixins:[myminix],
    mounted(){
              this.sayhello();
           },
    methods:{
           sayhello:function(){
              console.log("hello from other instance!");
           }
}

//output  "hello from myMinix"
//output  "hello from myMinix"

輸出了兩次一樣的結果,都來自other 組件, 第一個函數被調用時,沒有被銷毀,它只是被重寫了。我們在這里調用了兩次sayhello()函數。

全局下注冊minix

比如在 vue-cli 構建的項目中,main.js 中定義了一個minix,并且掛載在vue 實例上,

 Vue.mixin({
      mounted() {
         console.log("hello from other");
      }
 })

 new Vue({
    

  })

那么在 Vue 實例下的每個組件都會 在掛載的時候執(zhí)行一次這個方法,輸出多次 “hello from other”

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://www.ezyhdfw.cn/yun/87249.html

相關文章

  • Vue原理】Mixin - 白話版

    摘要:而我覺得現在出一個白話版,是讓大家有興趣去研究源碼的時候,可以提前理清一下思路。相當于封裝,提取公共部分。顯然,今天我不是來教大家怎么用的,怎么用看文檔就好了,我是講解生命的真諦內部的工作原理。而這個不會合并,直接替換掉整個選項 寫文章不容易,點個贊唄兄弟專注 Vue 源碼分享,文章分為白話版和 源碼版,白話版助于理解工作原理,源碼版助于了解內部詳情,讓我們一起學習吧研究基于 Vue版...

    CollinPeng 評論0 收藏0
  • JS每日一題: Vuemixin怎么理解?

    摘要:兩個對象鍵名沖突時,取組件對象的鍵值對也使用同樣的策略進行合并。代碼理解全局混合也可以全局注冊混合對象。注意使用一旦使用全局混合對象,將會影響到所有之后創(chuàng)建的實例為自定義的選項注入一個處理器。 20190122 Vue中mixin怎么理解? mixin是為了讓可復用的功能靈活的混入到當前組件中,混合的對象可以包含任意組件選項(生命周期,指令之類等等), mixin翻譯過來叫混合,高級的...

    jubincn 評論0 收藏0
  • 如何正確的(?)利用 Vue.mixin() 偷懶

    摘要:前言最近開發(fā)的頁面以及功能大都以表格為主,接口獲取來的數據大都是需要經過處理,比如時間戳需要轉換,或者狀態(tài)碼的轉義。首先,還是在文件中定義一個狀態(tài)碼對應對象,這里我們將其對應的內容設為段落。 前言 最近開發(fā)的頁面以及功能大都以表格為主,接口獲取來的 JSON 數據大都是需要經過處理,比如時間戳需要轉換,或者狀態(tài)碼的轉義。對于這樣的問題,各大主流框架都提供了類似于過濾的方法,在 Vue ...

    Leo_chen 評論0 收藏0
  • Vue官網教程疑難解析

    摘要:利用可以對組件代碼進行抽離及封裝。注如果傳入的是鉤子函數,則按照數組的順序依次執(zhí)行鉤子函數,且會在組件之前執(zhí)行跟淺拷貝的順序有出入頁面執(zhí)行時,依次會打印 主要摘錄的是Vue教程中的疑難點,結合demo來加深概念的理解(持續(xù)更新?。? 箭頭函數在Vue中使用 不要在選項屬性或回調上使用箭頭函數(demo01) var vm1 = new Vue({ data: { ...

    wow_worktile 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<