为了账号安全,请及时绑定邮箱和手机立即绑定

关于列表选择的问题

关于列表选择的问题

小唯快跑啊 2019-03-13 13:13:19
1.2.图中的收货地址列表是动态遍历生成的,然后我需要通过选择设为默认地址来切换状态,后台是传了一个状态属性给我去判断,但是一判断就所有的都加上了,因为我这里用的是单选框按钮,如下图3.后面我就想着用状态值state去判断checked属性的有无,但是我如果要点击切换的时候,就是只能选中一个的时候又会出问题4.
查看完整描述

4 回答

?
慕哥6287543

TA贡献1831条经验 获得超10个赞

个人不太喜欢radio按钮,自己实现上述效果也不难。
当点击“设为默认”按钮时,<li v-for="key,index in list" :class={selected:key.selIndex==1}>@click="select(index)",
把Index传下去,此时会请求接口,如果接口请求成功,就遍历list,把每一项的default都设置为2,循环下面把list[index]项设置为1,(selIndex为后端给的是否默认)以上..

查看完整回答
反对 回复 2019-03-25
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

改为

:checked="item.state"


查看完整回答
反对 回复 2019-03-25
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

页面效果 v-for 可以根据索引来做 点击把索引赋值与一个变量 然后通过判断 index==变量名来 改变选中效果
也就是单选

然后需要传值告诉后端谁是选中的 就可以根据索引值 数据[索引]下标来获取对应元素


查看完整回答
反对 回复 2019-03-25
?
UYOU

TA贡献1878条经验 获得超4个赞

这种效果的话其实可以不用radio,你可以让UI给你那个选择默认地址的样式(圆圈)


<div v-for="(item, index) in addressList">

    <div :class="{'normal-radio-button','active-radio-button':item.state===1}" @click="selectDefault(index)"></div> 

</div>



methods: {

    selectDefault(index) {

        ...请求接口,更新页面

    }

}


查看完整回答
反对 回复 2019-03-25
  • 4 回答
  • 0 关注
  • 569 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信