發表日期:2019-11 文章編輯:小燈 瀏覽次數:7380
我們都知道 vue 中可以使用 modal 來實現 input 內容數據的雙向綁定。
小程序好像沒有提供相應的方法支持,就需要我們自己寫了。
很簡單,在 input
上先綁定需要取值的變量,如這個變量名是 name
,然后再定義一個用于指向變量名的屬性 data-modal
這個屬性值設置為 name
,在 input
的綁定方法中將這個屬性值取出,就會知道這個 input
綁定了哪個變量,然后再將 input
的當前值賦給這個變量即可。
wxml
<input id='name'
name="name"
type='text'
value='{{name}}' <!-- input 從 js 中的 data.name 取值 -->
data-modal='name' <!-- 這里通過 data-xx 的形式傳遞一個需要綁定的變量名,之后可以通過 event.dataset.xxx 輕松取到 -->
bindinput='handleInputChange' <!-- 這里綁定 input 內容變化時的處理方法 -->
>
</input>
wxs
Page({
data: {
name: String
},
// 處理 input 數據雙向綁定
handleInputChange: function (e) {
// 取出定義的變量名
let name = e.currentTarget.dataset.modal;
// 取出實時的變量值
let value = e.detail.value;
// 定義一個鍵值對
let dataMap = {};
// 設置這個鍵值對的鍵和值
dataMap[name] = value;
// 刷新數據
this.setData(dataMap);
// 這里用于測試
console.log(name, ':', this.data[name]) // 顯示 page 內 data 的實際數據
}
}
效果如下圖:
日期:2019-11 瀏覽次數:5554
日期:2019-11 瀏覽次數:12007
日期:2019-11 瀏覽次數:4379
日期:2019-11 瀏覽次數:5418
日期:2019-11 瀏覽次數:5279
日期:2019-11 瀏覽次數:7220
日期:2019-11 瀏覽次數:5184
日期:2019-11 瀏覽次數:15796
日期:2019-11 瀏覽次數:4756
日期:2019-11 瀏覽次數:6543
日期:2019-11 瀏覽次數:5405
日期:2019-11 瀏覽次數:4593
日期:2019-11 瀏覽次數:10797
日期:2019-11 瀏覽次數:8350
日期:2019-11 瀏覽次數:5105
日期:2019-11 瀏覽次數:4337
日期:2019-11 瀏覽次數:8989
日期:2019-11 瀏覽次數:4679
日期:2019-11 瀏覽次數:4868
日期:2019-11 瀏覽次數:4887
日期:2019-11 瀏覽次數:4507
日期:2019-11 瀏覽次數:5055
日期:2019-11 瀏覽次數:10311
日期:2019-11 瀏覽次數:5484
日期:2019-11 瀏覽次數:5465
日期:2019-11 瀏覽次數:4920
日期:2019-11 瀏覽次數:12366
日期:2019-11 瀏覽次數:7379
日期:2019-11 瀏覽次數:7931
日期:2019-11 瀏覽次數:4875
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.