微信小程序setData()方法的使用
官方解釋:
setData 函數用于將數據從邏輯層發送到視圖層(異步),同時改變對應的 this.data 的值(同步)。
自己通俗的理解就是給數據復制用的,
結合一個demo說下setdata的使用
?
不如點擊確定按鈕把當前的值顯示的布局中
?
xwml 里面填寫內容
<!--index.wxml-->
<view class="container">
<view class="usermotto">
<text class="user-motto" bindtap='click'>{{motto}}</text>
<picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}">
<view class="picker">
當前的國家:{{array[index]}}
</view>
</picker>
</view>
</view>
然后在js中添加事件(js中data是初始化數據用的)
首先打印下數據
bindPickerChange: function (e) {
console.log(e)
},
選擇的是第一個看截圖
我們從log中可以看出當前選擇數據的0, 那么它的值也就是e.detail.value, 其中e是自己去的數據名字,后面跟的
是數據的路徑, 有了數據我們數值一下,假設在data中初始化一個數值為index,
代碼如下:
bindPickerChange: function (e) {
console.log(e.detail.value)
index = e.detail.value;
},
看下日志:
打印的是又數據的,賦值的報錯了,說index沒有定義,為什么呢???
首先需要明白的是index是哪里的數據,當然是data里面的,我們要用data里面的數據就需要使用setdata不然
直接就報錯,我們修改
bindPickerChange: function (e) {
console.log(e.detail.value)
index: e.detail.value
this.setData({
index: e.detail.value
})
},
這樣就很完成的得到想要的結果,
這個也是自己對setdata的理解,謝謝。
給出demo地址參考
demo地址如果幫助了您希望給一個免費的star
總結
以上是生活随笔為你收集整理的微信小程序setData()方法的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序自定义组件Component的
- 下一篇: 微信小程序picker 轮滑1-100的