博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VUE 动态给对象增加属性,并触发视图更新。
阅读量:5969 次
发布时间:2019-06-19

本文共 598 字,大约阅读时间需要 1 分钟。

在开发过程中,我们时常会遇到这样一种情况:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的。

根据官方文档定义:如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。

Vue 不允许在已经创建的实例上动态添加新的根级响应式属性 (root-level reactive property)。然而它可以使用 Vue.set(object, key, value) 方法将响应属性添加到嵌套的对象上。

我们编写如下代码测试给一个对象动态添加属性:

这种方式可以给form增加一个属性,但是不会界面不会响应更新。

正确的做法:

这样就可以给对象添加amount 属性了。

这个有什么应用场景呢,比如 data.form 属性很多,其中大部分是不需要要的,这时候,可以使用这种方法实现动态添加需要的属性。

需要注意的是,这种方式是不能给根数据添加属性的,比如:

这种方式给data 增加一个 name 属性是无效的。

 

转载于:https://www.cnblogs.com/yg_zhang/p/10562161.html

你可能感兴趣的文章
Linux mail 命令
查看>>
Ansi与Unicode及慎用W2A等
查看>>
IDEA 连接 GIT OSCHINA 提交本地已存在的项目
查看>>
EFI分区如何删除
查看>>
【Java集合源码剖析】TreeMap源码剖析
查看>>
读取oracle注释
查看>>
二叉树
查看>>
Laravel 5.1 artisan 的使用
查看>>
Maven 学习之旅
查看>>
C Primer Plus 第5章 运算符、表达式和语句 编程练习及答案
查看>>
Python点滴
查看>>
WINDOWS 几种坐标系
查看>>
大豆和黄豆芽还能吃吗?
查看>>
Yii2中如何将Jquery放在head中的方法
查看>>
解析solidity的event log
查看>>
[转发] 【GRT安智网】HTC安致手机ROM国内首个中文定制教程goapk首发[最新厨房V0......
查看>>
try catch 之后是否会继续执行
查看>>
vim 配置svn
查看>>
《重构-改善既有代码设计》读书笔记-重构篇
查看>>
测试第三方代码
查看>>