取 dataset 值
<view data-id="{{item.id}}" bindtap="gotoDetails"> </view>
如上,如何在 gotoDetails 程序中處理 data-id 對應的值呢?
gotoDetails: function (e) { e.target.dataset.id }
e.target 確定是哪個觸發的,dataset 對應 data- 開頭的屬性,id 是具體哪一個屬性。注意:data-xxx,xxx 這里只能小寫,跟 jQuery 一個毛病。
注意,如果我們有嵌套 view,則如果用戶點擊的是內層的 view,則 e.target 就是內層的 view(盡管我們 bindtap 是寫在外層 view)中,所以我們應該為每一層都寫在 data-id="{{item.id}}"。
取其他頁面傳過來的值
wx.navigateTo({ url: '/pages/details/details?id=123' });
如上,如何在 details 頁面中,取到 id 值呢?
onLoad: function (options) { options.id }
在 onLoad(注意大小寫)中,從 options 參數取。如果前一頁面沒有傳 id 過來,這里 options.id 就是undefined。