在vue.js中中使用vm.$data={a:2,b:1}提示错误,vm.$data不能修改vue实例的data?

查看:123
本文介绍了在vue.js中中使用vm.$data={a:2,b:1}提示错误,vm.$data不能修改vue实例的data?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

尝试使用$data来修改Vue实例中的data内容结果控制台报错,提示的意思是不能整块的修改data,只能修改data里面的属性吗?

代码:

let data1 = {a:1,b:2}
let vm = new Vue({
    el:'#example',
    data:data1
})

vm.$data = {a:2,b:1};

解决方案

初始化时,Vue 将会递归将 data 的属性转换为 getter/setter,从而让 data 的属性能够响应数据变化。

查阅文档没有看到类似$set的修改方法,因此初始化完成后,貌似不能再修改root $data。

题主可以用如下代码达到想要的效果:

let data1 = {a:1,b:2}
let vm = new Vue({
    el:'#example',
    data:{data1: data1}
})

vm.$data.data1 = {a:2,b:1};

这篇关于在vue.js中中使用vm.$data={a:2,b:1}提示错误,vm.$data不能修改vue实例的data?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆