欢迎您光临深圳塔灯网络科技有限公司!
电话图标 余先生:13699882642

网站百科

为您解码网站建设的点点滴滴

小程序 input 数据双向绑定,实现方法之一

发表日期:2019-11 文章编辑:小灯 浏览次数:6523

小程序 input 数据双向绑定,实现方法之一

我们都知道 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 的实际数据
    }
}

效果如下图:


本页内容由塔灯网络科技有限公司通过网络收集编辑所得,所有资料仅供用户学习参考,本站不拥有所有权,如您认为本网页中由涉嫌抄袭的内容,请及时与我们联系,并提供相关证据,工作人员会在5工作日内联系您,一经查实,本站立刻删除侵权内容。本文链接:http://www.dengtar.com/25235.html
相关小程序
 八年  行业经验

多一份参考,总有益处

联系深圳网站公司塔灯网络,免费获得网站建设方案及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:余经理:13699882642

Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.