首页 > 其他分享 >Vue.set()和this.$set()介绍

Vue.set()和this.$set()介绍

时间:2023-01-06 14:04:10浏览次数:48  
标签:info set 视图 Vue 介绍 data 属性


文章目录

  • ​​1.场景​​
  • ​​2.使用​​
  • ​​2.1 `this.$set()`​​
  • ​​2.2 `Vue.set()`​​

1.场景

当生成​​Vue​​实例之后,再次给数据赋值或者新增数据对象属性时,数据可以正常改变,但是视图不会更新。

data () {
return {
student: {
name: '',
sex: ''
}
}
}
mounted () { // ——钩子函数,实例挂载之后
this.student.age = 24
}


// 数据能够正常更新 但是不会触发视图更新

2.使用

2.1 ​​this.$set()​

向响应式对象中添加一个属性,并确保这个新属性同样是响应式的,且触发视图更新。

mounted () {
this.$set(this.student,"age", 24)
}

// 视图能够正常完成更新

2.2 ​​Vue.set()​

​Vue​​ 不允许动态添加根级响应式属性。

const app = new Vue({
data: {
a: 1
}
// render: h => h(Suduko)
}).$mount('#app1')

Vue.set(app.data, 'b', 2)

// 报错
//  使用Vue.set()方法向嵌套对象添加响应式属性

var vm=new Vue({
el:'#test',
data:{
//data中已经存在info根属性
info:{
name:'小明';
}
}
});
//给info添加一个性别属性
Vue.set(vm.info,'sex','男');


// 视图能够正常完成更新


标签:info,set,视图,Vue,介绍,data,属性
From: https://blog.51cto.com/u_15932195/5993213

相关文章

  • vue 配置代理
    如果接口请求存在跨域问题且后端暂没时间解决,可以通过vue-cli配置代理的方式解决:.env.development中设置VUE_APP_BASE_API=LocalLocal为该项目运行时的服务器地址,vue......
  • 28个数据可视化图表的总结和介绍
    数据可视化本身就是一种通用语言。我们这里通用语言的意思是:它能够向各行各业的人表示信息。它打破了语言和技术理解的障碍。数据是一些数字和文字的组合,但是可视化可以展......
  • docker介绍
    Docker是一个容器化平台,它以容器的形式将你的应用程序及所有的依赖项打包在一起,以确保你的应用程序在任何环境中无缝运行。Docker利用Linux核心中的资源分离机制(例如cgro......
  • 在vue的v-for中,key为什么不能用index?
    写在前面在前端中,主要涉及的基本上就是DOM的相关操作和JS,我们都知道DOM操作是比较耗时的,那么在我们写前端相关代码的时候,如何减少不必要的DOM操作便成了前端优化的......
  • 写过vue自定义指令吗,原理是什么?.m
    背景看了一些自定义指令的文章,但是探究其原理的文章却不多见,所以我决定水一篇。如何自定义指令?其实关于这个问题官方文档上已经有了很好的示例的,我们先来温故一下。除......
  • 2023前端二面必会vue面试题指南
    action与mutation的区别mutation是同步更新,$watch严格模式下会报错action是异步操作,可以获取数据后调用mutation提交最终数据Vue路由hash模式和history......
  • egg.js+vue 实现crypto.js 对称加密
    对称加密对称加密算法,加解密都用同一个密钥。 node:letcrypto=require('crypto')//data:需要加解密的内容,//key:密钥//初始化向量(iv)functionaesEncryp......
  • 面了几个说自己精通 Vue 的同学,实在一言难尽……
    请说一下响应式数据的原理......
  • VUE中的键盘事件(按键别名)
    1.vue中常用的按键别名:回车=>enter删除=>delete(捕获“删除”和“退格”键)退出=>esc空格=>space换行=>tab  //不适合用keyup事件,tab会切走当前选中的......
  • vue2中的mixin
    1.mixin的用处:主要用于多个组件内存在重复JS业务逻辑(可以包括methods,mounted,watch等等),将该JS部分代码封装在一个js文件下对外暴露,需要使用的组件进行引用。混入(mixin)......