当前位置: 首页 > Web前端 > vue.js

Vue数据类型引起的页面渲染问题

时间:2023-04-01 12:41:29 vue.js

先搞清楚几个概念,js中基本数据类型和引用数据类型是有区别的。基本数据类型包括(Number、String、Boolean、Null、Undefined、Symbol),引用数据类型包括对象、数组、函数和数据。在Vue的使用中,基本数据类型会自动检测数据并更新页面,而引用数据类型不会导致Vue更新页面。看看下面的代码,涉及三个知识点,浅拷贝,引用数据类型,vue页面渲染问题。下面的代码直接给data1数组赋值,只是复制了对象的引用地址,并没有用来在堆内存中生成新的对象,所以this.data1根本没有变。如果改了,constdata1=[],data1=this.data1。就是这样。第二个问题是data1是数组,引用数据类型不会导致vue更新页面,所以只需要加上this.id=activekey-1;(id是一个数字)在这个方法的最后导致vue页面渲染。所以在以后的开发过程中,只要遇到直接赋值的情况,一定要非常小心!!!(个人想法,如有不妥请指教!)constdata1=this.data1;constactiveKey=this.data1.length+1;data1.push({name:'新客人',mobile:'',card:'',img:''});this.activeKey=activeKey;this.id=activeKey-1;