南强小屋 Design By 杰米
最近在开发过程中遇到一个问题。在节点上面写点击事件时,点击事件不执行。代码如下:
<!-- 操作 -->
<el-table-column label="操作">
<template slot-scope="scope">
<span class="poi icon-hover f16 mr20" @click='scope.row.edit=!scope.row.edit'>
<svg-icon :icon-class="scope.row.edit"></svg-icon>
</span>
<span class="poi icon-hover f16">
<svg-icon icon-class="icon_delete"></svg-icon>
</span>
</template>
</el-table-column>
<!-- 操作 -->
这里面的click事件一直不执行,一开始以为是点击事件没写对一直在找原因,后面突然想到会不会是数据不同步的原因的,因为edit字段是自己添加进去的字段,如下:
export default {
name: 'strategic',
data() {
return {
tableData: [{
'pp_id': 4,
'brand_name': '1414',
'project_name': '得意',
'description': '的u会回来会',
'publish_time': '2018-07-23',
'is_used': 0
}]
}
},
components: { },
computed: {
},
created() {
this.initTableData()
},
methods: {
initTableData() {
this.tableData.forEach(element => {
element.edit = false
})
}
}
}
之后我直接在数据里面加上edit字段,发现是能够同步数据的,代码如下:
data() {
return {
tableData: [{
'pp_id': 4,
'brand_name': '1414',
'project_name': '1414',
'description': '7588888888',
'publish_time': '2018-07-23',
'is_used': 0,
'edit': false
}]
}
}
原来是在我们使用vue进行开发,当生成vue示例后,再次给数据赋值时,有时候并不能自动更新到数据上去,这时候我们就要通过$set来解决这个问题,解决代码如下:
initTableData() {
this.tableData.forEach(element => {
this.$set(element, 'edit', false)
})
}
至此就解决啦。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米
暂无vue中$set的使用(结合在实际应用中遇到的坑)的评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。