亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在一個標簽中取消訂閱 observable 會禁用所有嗎?

在一個標簽中取消訂閱 observable 會禁用所有嗎?

慕森王 2021-10-29 16:45:21
我已經使用 Riot.js 構建了一個 SPA,該 SPA 將專有消息傳遞系統接收到的數據可視化。為了使標簽對更改做出反應,我riot.ob在riot上下文中創建了一個全局 observable ( ),當從服務器接收到新值時,它會觸發一條消息:riot.ob.trigger('valueUpdate', stationId, datapointId, value);如果消息是針對此標簽的,則有許多不同的標簽訂閱此事件并觸發更新:riot.ob.on('valueUpdate', function (stationId, datapointId, value) {    if (stationId == self.stationId && datapointId == self.datapoint.id) {        self.value = value;        self.update();    }});這很好用。當我在我的應用程序中導航時會出現問題,這意味著我需要在特定區域卸載標簽并安裝其他東西。當我卸載像上面這樣的標簽時,我需要取消訂閱valueUpdate事件,所以我使用這個:this.on('unmount', function () {    riot.ob.off('valueUpdate');})但是現在所有其他仍然安裝在其他地方的標簽也會自動取消訂閱,并且不再監聽這個valueUpdate事件。如何僅取消訂閱單個標簽的事件處理函數?我是否必須創建一個命名函數并將其傳遞給riot.ob.off('valueUpdate');某種方式?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號