微信小程序,组件增加删除

微信小程序,组件增加删除

使用this.data.obj.splice(x,1);时,虽然数组的值去掉了,但是页面是不会生效的,必须使用this.setData()来使页面刷新。

下面给出两种做法:
1、temp来搭桥,并重新赋值,使页面生效
2、直接设置

js

Page({
  data: {
    obj:[],
    obj1:['1111111','222222','333333']
},
/***增加组件 */
onTapAdd:function(e){
  var temp=this.data.obj;
  var temp1=this.data.obj1;
  temp.push(temp1[temp.length]);
  this.setData({
    obj:temp
  })
},
/***** 可以修改删除指定组件*/
onTapDel:function(e){

 //重点在这,必须搭桥,要定义一个新变量temp
  var temp = this.data.obj;
  //this.data.obj.splice(x,1);该做法虽然数组去掉了,但是页面是不会生效的
  temp.splice(temp.length,1);
  //重设即可生效
  this.setData({
    obj: temp
  })
  /**
  或者直接setData
  this.setData({
    obj: this.data.obj.splice(this.data.obj.length,1)
  })
  */
},
})

wxml

<!--example/deleteComponent/deleteComponent.wxml-->
<view>
   <button bindtap='onTapAdd'>添加input组件</button>
   <button bindtap='onTapDel'>删除Input组件</button>
   <view>
      <block wx:for="{{obj}}" wx:key="*this" >
          <text>{{item}}</text>
      </block>
    </view>
</view>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值