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

        淺析小程序中什么是behaviors?怎么創建和使用?

        什么是behaviors?下面本篇文章帶大家了解一下小程序中自定義組件的 behaviors,介紹一下創建behaviors,并導入與使用的方法,希望對大家有所幫助!

        淺析小程序中什么是behaviors?怎么創建和使用?

        什么是 behaviors

        behaviors 是小程序中用于實現組件代碼共享的特性,作用類似 Vue.js 中的 mixins。比如在多個組件中,有一部分代碼是完全一樣的,我們沒有必要每個組件寫一遍,為了方便,我們可以把這部分代碼封裝出來,放在 behaviors 中進行共享,誰用到這部分代碼,直接引用就可以生效


        behaviors 的工作方式

        • 在小程序中,每個 behaviors 都可以包含一組屬性、數據、生命周期和方法。組件引用它時,它的屬性、數據和方法會被合并到組件中。
        • 每個組件中可以引用多個 behaviors ,每個 behaviors 之間也可以相互引用

        behaviors 的創建

        調用 behaviors(Object Object) 方法就可以創建一個共享的 behaviors 實例對象,供所有的組件使用

        //使用 module.exports 將 behavior 實例對象共享出去 module.exports = Behavior({          //私有數據節點     data: { },          //屬性節點     properties: { },          //事件處理     methods: {  } })

        behaviors 的導入與使用

        在組件中,使用 require() 方法導入需要的 behaviors,掛載后即可訪問 behaviors 中的數據或方法

        //1.使用 `require()` 導入需要的自定義 behaviors 模塊 const myBehaviors = require("../../behaviors/behaviors")  Component({    //2. 將導入的 behaviors 實例對象,掛載到 behaviors數組的節點中便可以使用   behaviors: [myBehaviors],      properties: {     //...   }      //其他代碼... })

        behaviors 中所有可用的節點

        比較常用的有 propertiesdatamethodsbehaviors

        可用的節點 類型 是否必填 描述
        properties Object Map 同組件的屬性
        data Object 同組件的數據
        methods Object 同自定義組件的方法
        behaviors Sting Array 引用其它的 behaviors
        created Function 生命周期函數
        attached Function 生命周期函數
        ready Function 生命周期函數
        moved Function 生命周期函數
        detached Function 生命周期函數

        同名字段的覆蓋和組合規則

        組件和它引用的 behaviors 中可以包含同名的字段,此時可以參考以下三種同名的處理規則

        • 同名的數據字段 (data

          • 若同名的數據字段都是對象類型,會進行對象合并
          • 其余情況會進行數據覆蓋,覆蓋規則: 組件 > 父 behaviors > 子 behaviors 、靠后的 behaviors > 靠前的 behaviors(優先級高的覆蓋優先級低的,最大的優先級最高)
        • 同名的屬性(properties)或方法(methods)

          • 若組件本身有這個屬性或方法,則組件的屬性或方法會覆蓋 behaviors 中的同名屬性或方法
          • 若組件本身無這個屬性或方法,則在組件的 behaviors 字段中定義靠后的 behaviors 的屬性或方法會覆蓋靠前的同名屬性或方法
          • 在上一條基礎上,若存在嵌套引用 behaviors 的情況,規則是:父 behaviors 覆蓋 子 behaviors中同名的屬性或方法
        • 同名的生命周期函數

          • 對于不同生命周期函數之間,遵循組件生命周期函數的順序
          • 對于同種生命周期函數,遵循如下規則
            • behaviors 優先于組件執行
            • 子 behaviors 優先于父 behaviors執行
            • 靠前的 behaviors 優先于靠后的 behaviors 執行
          • 如果同一個 behaviors 被一個組件多次引用,它會定義生命周期函數只會被執行一次

        【相關學習推薦:小程序開發教程】

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 精品福利视频一区二区三区| 日产国产精品亚洲系列| 在线精品视频一区二区| 久久精品国产99国产精品澳门| 亚洲精品无码你懂的网站| 91精品国产高清久久久久久国产嫩草 | 亚洲欧洲久久久精品| 老司机91精品网站在线观看| 国语自产少妇精品视频| 一区二区国产精品| 久久99精品久久久久久野外 | 亚洲精品无码久久久久| 国产精品免费αv视频| 精品亚洲欧美高清不卡高清| 精品人妻大屁股白浆无码| 中文字幕久久精品| 精品无码久久久久久国产 | 国产精品一区二区不卡| 精品福利一区二区三区免费视频| 亚洲国产精品成人精品无码区 | 国产乱人伦偷精品视频免观看 | 精品久久综合1区2区3区激情| 久久99精品国产99久久6男男| 国产a∨精品一区二区三区不卡| 老司机亚洲精品影院无码| 在线精品自拍无码| 伊人久久精品无码二区麻豆| 亚洲精品线路一在线观看| 亚洲äv永久无码精品天堂久久 | 国语自产精品视频在线观看| 91精品啪在线观看国产电影| 国产精品亚洲片夜色在线| 国产国产精品人在线观看| 国产99视频精品免视看7| 国产精品偷伦视频观看免费| 久久久免费精品re6| 久久久精品国产sm调教网站 | 久久精品夜色噜噜亚洲A∨| 国产精品部在线观看| 国产成人精品福利网站在线观看 | 东京热TOKYO综合久久精品|