Vue2动态添加属性方式

Vue2不允许在已经创建的实例上动态添加新的响应式属性;若想实现数据与视图同步更新,可采取下面两种解决方案:

1.使用Vue.set,里面的参数是Vue.set(target,index, value)

javascript 复制代码
// 部分代码
export default {
    data() {
        return {
            info: {
                username: 'alan'
            }
        }
    },
    mounted() {
        this.updateInfo()
    },
    methods: {
        updateInfo() {
            Vue.set(this.info, 'age', 18)
            console.log(this.info)
        }
    }
}

2.使用Object.assign,给属性重新赋值

javascript 复制代码
// 部分代码
updateInfo() {
    this.info = Object.assign({}, this.info, {age: 18});
    console.log(this.info)
}
相关推荐
进阶的小木桩40 分钟前
Vue 3 + Elementui + TypeScript 实现左侧菜单定位右侧内容
vue.js·elementui·typescript
whysqwhw43 分钟前
js之Promise
前端
恋猫de小郭4 小时前
Flutter 3.35 发布,快来看看有什么更新吧
android·前端·flutter
chinahcp20085 小时前
CSS保持元素宽高比,固定元素宽高比
前端·css·html·css3·html5
暖木生晖5 小时前
flex-wrap子元素是否换行
javascript·css·css3·flex
gnip6 小时前
浏览器跨标签页通信方案详解
前端·javascript
gnip7 小时前
运行时模块批量导入
前端·javascript
hyy27952276847 小时前
企业级WEB应用服务器TOMCAT
java·前端·tomcat
逆风优雅7 小时前
vue实现模拟 ai 对话功能
前端·javascript·html
若梦plus8 小时前
http基于websocket协议通信分析
前端·网络协议