發表日期:2019-11 文章編輯:小燈 瀏覽次數:7564
我們都知道 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 瀏覽次數:5724
日期:2019-11 瀏覽次數:12169
日期:2019-11 瀏覽次數:4555
日期:2019-11 瀏覽次數:5593
日期:2019-11 瀏覽次數:5428
日期:2019-11 瀏覽次數:7449
日期:2019-11 瀏覽次數:5347
日期:2019-11 瀏覽次數:15982
日期:2019-11 瀏覽次數:4915
日期:2019-11 瀏覽次數:6716
日期:2019-11 瀏覽次數:5605
日期:2019-11 瀏覽次數:4756
日期:2019-11 瀏覽次數:11089
日期:2019-11 瀏覽次數:8564
日期:2019-11 瀏覽次數:5264
日期:2019-11 瀏覽次數:4516
日期:2019-11 瀏覽次數:9188
日期:2019-11 瀏覽次數:4849
日期:2019-11 瀏覽次數:5050
日期:2019-11 瀏覽次數:5061
日期:2019-11 瀏覽次數:4722
日期:2019-11 瀏覽次數:5212
日期:2019-11 瀏覽次數:10503
日期:2019-11 瀏覽次數:5651
日期:2019-11 瀏覽次數:5659
日期:2019-11 瀏覽次數:5097
日期:2019-11 瀏覽次數:12598
日期:2019-11 瀏覽次數:7563
日期:2019-11 瀏覽次數:8146
日期:2019-11 瀏覽次數:5059
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.