W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
針對 eventPlugin 插件上用到的高頻用到的事件監(jiān)聽和取消監(jiān)聽,MorJS 拓展了語法,可以直接在 aPage
/ wPage
中直接使用。
$eventListener
會在 Page
的 onLoad
生命周期中進行事件的綁定,在 onUnload
生命周期中進行事件的解綁,業(yè)務可以不用再去關(guān)心事件的解綁邏輯$eventListener
會在內(nèi)部處理好 this
對象,直接指向當前的實例,不需要業(yè)務去關(guān)心綁定,業(yè)務請勿在事件的回調(diào)函數(shù)中使用箭頭函數(shù),否則會導致 this
對象異常$eventListener
是一個對象: key
是事件名,value
是事件的回調(diào)函數(shù)$eventListener
只針對需要多次監(jiān)聽的事件,對于只需要監(jiān)聽一次的,請參考 event
插件的 once
的用法以下示例代碼以常見的刷新頁面數(shù)據(jù)為例,其中 refreshPage 是事件名
import { aPage } from '@morjs/core'
aPage({
// 會自動做事件的綁定和解綁
$eventListener: {
// refreshPage是監(jiān)聽的事件名
refreshPage: function (storeId) {
console.log('in page $eventListener refreshPage', storeId)
}
}
})
觸發(fā)代碼示例:
import { aPage } from '@morjs/core'
aPage({
data: {
storeId: '123'
},
onStoreChange: function () {
// 調(diào)用方依然只需要根據(jù)$event插件的方式,直接調(diào)用即可
getApp().$event.emit('refreshPage', this.data.storeId)
}
})
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: