1doDelete加括号识别不出来
删去括号变成doDelete就好了
<template>
<view class="address-list">
<view class="flex-item">
<u-swipe-action
:show="item.show" :index="index"
v-for="(item, index) in list" :key="item.id"
@click="doDelete()"
@open="open"
:options="options"
>
<view :id="'address'+item.id" class="address-li" :key="item.id">
<text class="address-price">联系人:{{item.name}} </text><br>
<text class="address-sold">收货地址:{{item.address}}</text><br>
<text class="address-sold">手机号:{{item.phone}}</text><br>
<hr>
<u-switch v-model="item.status">缺省选用</u-switch>
</view>
</u-swipe-action>
</view>
<view>
<u-button type="error" shape="circle" >提交</u-button>
</view>
</view>
</template>
<script>
import {
apiaddresssList
} from '../../api/mock.js'
export default {
data() {
return {
list: [],
loading: true,
options: [
{
text: '删除',
style: {
backgroundColor: '#dd524d'
}
}
],
}
},
created() {
let that = this;
uni.showLoading({
title:"jiazaizhong"
})
apiaddresssList(1, 10, '').then(res => {
that.list = res;
uni.hideLoading();
console.log(that.list)
}).catch(() => {
//联网失败, 结束加载
this.mescroll.endErr();
uni.hideLoading();
uni.showToast({
title:"网络异常",
duration:1000,
})
})
},
methods: {
doDelete(index, index1) {
// console.log(this.list[index].address)
console.log(this.list[index])
console.log(this.list)
let address=this.list[index].address;
let that=this;
uni.showModal({
title:'提示',
content:'当前操作不可恢复,确认删除地址['+address+']吗',
success:function(res){
if(res.confirm)
{
that.list.splice(index, 1);//指定位置删除一个
that.$u.toast(`删除了第${index}个商品`);//确认
}else if(res.cancel)
console.log('用户点击取消');
}
})
},
open(index) {
// 先将正在被操作的swipeAction标记为打开状态,否则由于props的特性限制,
// 原本为'false',再次设置为'false'会无效
// console.log('open>>',index)
console.log('open>>',index)
this.list[index].show = true;
this.list.map((val, idx) => {
console.log('oppp>>>', val, '>>>>',idx)
if(index != idx) {
thislist[idx].show = false
}
})
},
}
}
</script>
<style lang="scss">
.address-list {
background-color: #fff;
.address-li {
display: flex;
align-items: center;
padding: 20upx;
border-bottom: 1upx solid #eee;
.address-img {
width: 160upx;
height: 160upx;
margin-right: 20rpx;
}
.flex-item {
flex: 1;
.address-name {
font-size: 26upx;
line-height: 40upx;
height: 80upx;
margin-bottom: 20upx;
overflow: hidden;
}
.address-price {
font-size: 26upx;
color: red;
}
.address-sold {
font-size: 24upx;
margin-left: 16upx;
color: gray;
}
}
}
}
</style>
2.他不是计算属性呀,不带括号的方法到底是什么,没弄懂
传对象与不传对象吗
Vue.js 计算属性
计算属性关键词: computed。