這篇文章主要講解了“behaviors如何創(chuàng)建和使用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“behaviors如何創(chuàng)建和使用”吧!
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都網(wǎng)站制作、北川羌族網(wǎng)絡(luò)推廣、小程序制作、北川羌族網(wǎng)絡(luò)營(yíng)銷、北川羌族企業(yè)策劃、北川羌族品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供北川羌族建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
behaviors 是小程序中用于實(shí)現(xiàn)組件代碼共享的特性,作用類似 Vue.js 中的 mixins。比如在多個(gè)組件中,有一部分代碼是完全一樣的,我們沒有必要每個(gè)組件寫一遍,為了方便,我們可以把這部分代碼封裝出來,放在 behaviors 中進(jìn)行共享,誰用到這部分代碼,直接引用就可以生效
在小程序中,每個(gè) behaviors 都可以包含一組屬性、數(shù)據(jù)、生命周期和方法。組件引用它時(shí),它的屬性、數(shù)據(jù)和方法會(huì)被合并到組件中。
每個(gè)組件中可以引用多個(gè) behaviors ,每個(gè) behaviors 之間也可以相互引用
調(diào)用 behaviors(Object Object)
方法就可以創(chuàng)建一個(gè)共享的 behaviors 實(shí)例對(duì)象,供所有的組件使用
//使用 module.exports 將 behavior 實(shí)例對(duì)象共享出去 module.exports = Behavior({ //私有數(shù)據(jù)節(jié)點(diǎn) data: { }, //屬性節(jié)點(diǎn) properties: { }, //事件處理 methods: { } })
在組件中,使用 require()
方法導(dǎo)入需要的 behaviors,掛載后即可訪問 behaviors 中的數(shù)據(jù)或方法
//1.使用 `require()` 導(dǎo)入需要的自定義 behaviors 模塊 const myBehaviors = require("../../behaviors/behaviors") Component({ //2. 將導(dǎo)入的 behaviors 實(shí)例對(duì)象,掛載到 behaviors數(shù)組的節(jié)點(diǎn)中便可以使用 behaviors: [myBehaviors], properties: { //... } //其他代碼... })
比較常用的有 properties
、data
、methods
、behaviors
可用的節(jié)點(diǎn) | 類型 | 是否必填 | 描述 |
---|---|---|---|
properties | Object Map | 否 | 同組件的屬性 |
data | Object | 否 | 同組件的數(shù)據(jù) |
methods | Object | 否 | 同自定義組件的方法 |
behaviors | Sting Array | 否 | 引用其它的 behaviors |
created | Function | 否 | 生命周期函數(shù) |
attached | Function | 否 | 生命周期函數(shù) |
ready | Function | 否 | 生命周期函數(shù) |
moved | Function | 否 | 生命周期函數(shù) |
detached | Function | 否 | 生命周期函數(shù) |
組件和它引用的 behaviors 中可以包含同名的字段,此時(shí)可以參考以下三種同名的處理規(guī)則
同名的數(shù)據(jù)字段 (data
)
若同名的數(shù)據(jù)字段都是對(duì)象類型,會(huì)進(jìn)行對(duì)象合并
其余情況會(huì)進(jìn)行數(shù)據(jù)覆蓋,覆蓋規(guī)則: 組件 > 父 behaviors > 子 behaviors 、靠后的 behaviors > 靠前的 behaviors(優(yōu)先級(jí)高的覆蓋優(yōu)先級(jí)低的,最大的優(yōu)先級(jí)最高)
同名的屬性(properties
)或方法(methods
)
若組件本身有這個(gè)屬性或方法,則組件的屬性或方法會(huì)覆蓋 behaviors 中的同名屬性或方法
若組件本身無這個(gè)屬性或方法,則在組件的 behaviors 字段中定義靠后的 behaviors 的屬性或方法會(huì)覆蓋靠前的同名屬性或方法
在上一條基礎(chǔ)上,若存在嵌套引用 behaviors 的情況,規(guī)則是:父 behaviors 覆蓋 子 behaviors中同名的屬性或方法
同名的生命周期函數(shù)
behaviors 優(yōu)先于組件執(zhí)行
子 behaviors 優(yōu)先于父 behaviors執(zhí)行
靠前的 behaviors 優(yōu)先于靠后的 behaviors 執(zhí)行
對(duì)于不同生命周期函數(shù)之間,遵循組件生命周期函數(shù)的順序
對(duì)于同種生命周期函數(shù),遵循如下規(guī)則
如果同一個(gè) behaviors 被一個(gè)組件多次引用,它會(huì)定義生命周期函數(shù)只會(huì)被執(zhí)行一次
感謝各位的閱讀,以上就是“behaviors如何創(chuàng)建和使用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)behaviors如何創(chuàng)建和使用這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!