Vue.set全局操作
来源:互联网 发布:有哪些编程软件 编辑:程序博客网 时间:2024/05/21 07:49
Vue.set全局操作
Vue.set 的作用就是在构造器外部操作构造器内部的数据、属性或者方法。比如在vue构造器内部定义了一个count为1的数据,我们在构造器外部定义了一个方法,要每次点击按钮给值加1.就需要用到Vue.set。
一、引用构造器外部数据:
什么是外部数据,就是不在Vue构造器里里的data处声明,而是在构造器外部声明,然后在data处引用就可以了。外部数据的加入让程序更加灵活,我们可以在外部获取任何想要的数据形式,然后让data引用。
如下代码:
//在构造器外部声明数据var outData = { count:1, goods:'car' }; var app = new Vue({ el: '#app', data: outData })
二、在外部改变数据的三种方法:
1.用Vue.set改变
function add(){ Vue.set(outData,'count',4); }
2.用Vue对象的方法添加
app.count++;
3.直接操作外部数据
outData.count++;
其实这三种方式都可以操作外部的数据,Vue也给我们增加了一种操作外部数据的方法。
三、为什么要有Vue.set的存在?
由于JavaScript的限制,Vue不能自动检测以下变动的数组。
当你利用索引直接设置一个项时,vue不会为我们自动更新。
当你修改数组的长度时,vue不会为我们自动更新。
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no"> <title>Vue.set全局操作</title></head><body><h1>Vue.set全局操作</h1><hr><div id="app"> {{count}} <ul> <li v-for="item in arr">{{item}}</li> </ul></div><p><button onclick="add()">add</button></p></body><script src="../dist/vue.js"></script><script> function add() { //Vue.set(outData,'count',2); //app.count++; //outData.count++; //app.arr[1] = 'ddd'; Vue.set(app.arr,1,'dd'); } var outData = { count:1, // goods:'car' arr:['aaa','bbb','ccc'] }; var app = new Vue({ el: '#app', data: outData })</script></html>
这时我们的界面是不会自动跟新数组的,我们需要用Vue.set(app.arr,1,’dd’)来设置改变,vue才会给我们自动更新,这就是Vue.set存在的意义。
阅读全文
0 0
- Vue.set全局操作
- Vue2 全局-Vue.set更新vue数据
- vue set
- vue 全局/局部组件
- Vue-component全局注册
- VUE注册全局组件
- Vue全局方法注册
- vue 的全局API
- Vue全局API
- vue全局配置axios
- Vue-全局添加组件
- vue的全局主键
- vue开发:vue全局组件的方法
- VUE自定义过滤器(注册在Vue全局)
- vue组件1-全局注册
- vue自定义全局共用函数
- vue axios全局配置问题
- Vue自定义全局组件(插件)
- sanitizers
- mac下安装多版本PHP及切换
- myBatis高级映射
- Qt之使用openUrl打开文件时应该注意的问题
- Linux系统启动流程
- Vue.set全局操作
- Netty websocket 实现服务端推送消息
- 良/恶性乳腺癌肿瘤预测
- 常用git命令
- 业界重要的会议
- 2017第十届中国国际精细化工及定制化学品展览会会刊(参展商名录)
- 并查集 hrbust1160
- 仿知乎内容广告栏 WindowImageView
- Js获取当前日期时间及其它操作