1、h5和小程序的区别:当我们有一个“对象”变量在初始化时需要用到的,如果没有在全局变量初始化定义它的属性,则h5会报字段为null的报错,导致对应的页面渲染不出来。
如我们有一个resultData:{},该页面有使用到该对象的a,b属性,虽说接口请求到的数据会赋值给resultData对象,但我们还是要先将resultData对象具体先初始化数据,否则在h5会报错,在小程序就不会。
解决方法:一般将需要用到的对象属性初始化具体,因为有些时候在HTML标签初始化时就会用到该对象某一属性。h5中,在接口请求前用到该对象某一属性,要是没有初始化属性,则会报错,所以一般要兼容h5的话就得具体这样初始化对象属性(具体问题具体分析):
data(){
return(){
resultData:{
a:null,
b:null
}
}
}
2、拓展:关于Vue动态添加某一对象属性时,需要考虑到响应式
①第一种:
this.$set(object,"newFlag",true);//此写法可以达到响应式
object['newFlag'] = true;//此写法达不到响应式
②第二种
import Vue from 'vue'//先引入Vue
Vue.set(object,"newFlag",true)