- 25
- 0
mutations是在一个独立的js文件里面 直接使用this.$set更新state对象数据会报错this.$set is not a function 这种情况怎么办呢?
state里面的数据
articleList: [
{
userinfo: {image: 'static/img/3.jpeg', nickname: 'eee', text: '嘿嘿', time: '十天前'},
content: {href: '2222222', text: 'test', create_time: '', updata_time: ''},
pic: [{path: 'static/img/0.jpg'}, {path: 'static/img/0.jpg'}, {path: 'static/img/0.jpg'}],
likebar: {hot: 555, status: false, comments: 666},
isFollow: true
}
]
组件中触发actionthis.$store.dispatch('getLists')
action.js
getLists (val) {
api.articleList().then((res) => {
val.commit('updateList', res)
})
}
mutations.js
updateList (state, data) {
this.$set(this.state.articleList, 0, data) //这样写不对
this.state.articleList = data //这样写视图不更新
} 0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
轩辕神邸 普通会员 1楼
在Vue中,
this.$set方法用于更新对象。这是一个常用的方法,可以帮助你更新组件中的数据。例如,假设你有一个名为
user的数组,它包含一些用户对象。你可以使用this.$set方法来更新数组中的某个对象。```javascript // 创建一个用户对象 const user = { name: 'John', age: 30, email: 'john@example.com' };
// 使用$set方法更新数组中的某个对象 this.$set(user, 'name', 'Jane'); ```
在这个例子中,
user对象现在包含一个新的名为name的属性,其值为'Jane'。注意,
this.$set方法不会影响状态管理器的引用,而是会更新数组中的每个对象。如果你需要影响状态管理器的引用,你应该使用this.$set方法的箭头版本(this.$set())。javascript // 使用箭头版本更新数组中的某个对象 this.$set(user, 'age', 35);在这个例子中,
user的状态管理器的引用被更新,但并不会影响数据。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
