Vue.set 的作用就是在构造器外部操作构造器内部的数据、属性或者方法。比如在vue构造器内部定义了一个count为1的数据,我们在构造器外部定义了一个方法,要每次点击按钮给值加1.就需要用到Vue.set。

一、引用构造器外部数据:

什么是外部数据,就是不在Vue构造器里里的data处声明,而是在构造器外部声明,然后在data处引用就可以了。外部数据的加入让程序更加灵活,我们可以在外部获取任何想要的数据形式,然后让data引用。

看一个简单的代码:

 
1
2
3
4
5
6
7
8
9
10
//在构造器外部声明数据
{
,
'car'
;
{
,
//引用外部数据
outData
)

二、在外部改变数据的三种方法:

1、用Vue.set改变

 
1
2
3
{
;
}

2、用Vue对象的方法添加

 
1
;

3、直接操作外部数据

 
1
;

其实这三种方式都可以操作外部的数据,Vue也给我们增加了一种操作外部数据的方法。

三、为什么要有Vue.set的存在?

由于Javascript的限制,Vue不能自动检测以下变动的数组。

*当你利用索引直接设置一个项时,vue不会为我们自动更新。

*当你修改数组的长度时,vue不会为我们自动更新。

看一段代码:

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!DOCTYPE html>
>
<head>
>
</script>
</title>
</head>
<body>
</h1>
<hr>
>
<ul>
</li>
</ul>
      
</div>
</button>
 
>
    
{
;
;
//Vue.set(app.arr,1,'ddd');
}
{
]
;
{
,
outData
)
</script>
</body>
</html>

这时我们的界面是不会自动跟新数组的,我们需要用Vue.set(app.arr,1,’ddd’)来设置改变,vue才会给我们自动更新,这就是Vue.set存在的意义。

 

相关文章:

  • 2022-12-23
  • 2021-08-29
  • 2018-03-15
  • 2021-04-26
  • 2022-12-23
  • 2021-11-02
  • 2022-12-23
  • 2021-05-28
猜你喜欢
  • 2021-08-28
  • 2022-12-23
  • 2021-10-25
  • 2021-09-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案