(轉)小程序 triggerEvent 使用

在對組件進行封裝時 在當前頁面想要獲取組件中的某一狀態(tài),需要使用到this.triggerEvent(' ',{},{}),第一個參數是自定義事件名稱,這個名稱是在頁面調用組件時bind的名稱,第二個對象就可以將想要的屬性拿到,第三個參數文檔中有介紹,有機會再做補充。

  • 在這個demo中l(wèi)ike組件是我要封裝的組件,在classic.wxml中調用的:
image.png
  • 組件like.vue的頁面是這樣寫的:
<view bind:tap="onLike" class="container">
  <image src="{{like?yesSrc:noSrc}}" />
  <text>{{count}}</text>
</view>

  • 組件的like.js中methods是這樣寫的:
methods: {
        onLike(event) {
            let like = this.properties.like;
            let count = this.properties.count;
            count = like ? count - 1 : count + 1;
            this.setData({
                like: !like,
                count
            })
            let behavior = this.properties.like ? "like" : "cancel";
            this.triggerEvent('like', {
                behavior
            }, {})
        }
    }

  • 那么在classic.wxml中調用組件:
  • 這里要注意bind:后面的like是this.triggerEvent()的第一個參數,自定義事件名稱
<v-like bind:like="onLike" like="{{classicData.like_status}}" count="{{classicData.fav_nums}}"/>

  • classic.js中onlike就可以實現頁面對組件屬性的獲?。?/li>
 onLike: function(event) {
        console.log(event)
    }

image.png

event.detail.behavior就可以拿到是不是喜歡的屬性了。

作者:給我小魚干
鏈接:http://www.itdecent.cn/p/8b1c8609bbab
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 因新工作主要負責微信小程序這一塊,最近的重心就移到這一塊,該博客是對微信小程序整體的整理歸納以及標明一些細節(jié)點,初...
    majun00閱讀 7,639評論 0 9
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數據庫組件 SD...
    陽明AI閱讀 16,205評論 3 119
  • 1.小程序起步 (1)點擊https://mp.weixin.qq.com/wxopen/waregister?a...
    GXW_Lyon閱讀 3,610評論 0 0
  • 失眠一直都是家常便飯,自從懷孕,頭都疼睡的,但依舊困,伴著發(fā)動機也是半睡半醒,難受至極 今天夜里卻很安靜 我卻失眠...
    銘初繪本館閱讀 163評論 0 0
  • 思路:構建一個數據棧st,和一個最小數字棧 smin st 的所有操作的都是正常的,正常的push(),top()...
    杰倫哎呦哎呦閱讀 536評論 0 1

友情鏈接更多精彩內容