美文网首页JS
微信小程序和vue的区别

微信小程序和vue的区别

作者: Hyelim | 来源:发表于2020-03-11 23:54 被阅读0次

数据类型

  • vue组件中data必须是函数 data(){return{}},new Vue中的选项可以是函数也可以是对象
  • 小程序中data都是对象

初始化数据,添加响应式属性

  • vue会在初始化实例的时候,遍历data中的所有属性,使用Object.defineProperty把这些属性都转成getter/setter,给他们添加响应式。
  • 小程序不会

设置属性

  • 由于添加了响应式,更改数据的话可以直接this.data.name='xx',对于动态新增的数据,就要用
    • 对象可以用
this.$set(this.data.someObject,'b',2),

或者重新赋值,或者

this.$delete(this.data.someObject,propertyName)
  • 数组可以直接用新的值重新赋值,或者this.$set,或者pop,push,shift,unshift,reverse,sort,splice,
  • 小程序统统都是this.setData中去赋值,对于数组中的子元素可以this.setData({['list[0]']:newValue}),也可以'obj.propertyName':newValue

Vue.set是为了给动态新增的数据增加响应式,这样才能更新到视图上(使用 Object.defineProperty 把这些属性全部转为 getter/setter),直接改的话也能在数据中更新成功,但视图不会有变化
data是个原型链上的函数,在构造函数的时候,将

return{
_data:...this.data(),
...this,
...this.data(),
},

使得每个实例都有自己的作用域,当操作this.data.obj.name='123'的时候,等同于this.data().obj.name='123'.

微信小程序中是将data对象作为原型上的_freeData对象保存,就像vue中的$data,执行构造函数的时候再去给每个实例开辟空间

在vue中,this.data.name='aaaa',是可以更新到视图的,小程序中不行

vue,写在data中的数据都添加了响应式属性,进行了监听处理,如果事后要新增的话,只能用Vue.set方法

小程序中,没有对data中的数据添加响应式属性,所以就算data中写不全,也没关系,要更新视图的话用
this.setData方法,一次性为这些属性渲染到视图上

相关文章

  • mpvue

    问:mpvue里,哪些是要用微信小程序原生写法?(也就是mpvue和vue的区别) 答:vue里跳转页面,用

  • 微信小程序和Vue的区别

    单向绑定 & 双向绑定 微信小程序只支持单向绑定,如果需要修改data的值,只能通过setData操作。Vue可以...

  • 微信小程序和vue的区别

    数据类型 vue组件中data必须是函数 data(){return{}},new Vue中的选项可以是函数也可以...

  • uniapp

    开发工具开发者中心如何学习?vue和微信小程序的区别、比较uni-app官方教程学习手记Vue单文件组件 (SFC...

  • 微信小程序开发笔记

    微信小程序开发和vue开发差不多 使用SpringBoot开发微信小程序后台 这次开发和以往不同的是使用了聚合工程...

  • vue 和微信小程序的区别、比较

    写了vue项目和小程序,发现二者有许多相同之处,在此想总结一下二者的共同点和区别。 一、生命周期 先贴两张图: v...

  • Vue 和微信小程序的区别、比较

    写了vue项目和小程序,发现二者有许多相同之处,在此想总结一下二者的共同点和区别。 一、生命周期 先贴两张图: v...

  • vue 和微信小程序的区别、比较

    写了vue项目和小程序,发现二者有许多相同之处,在此想总结一下二者的共同点和区别。 一、生命周期 先贴两张图: v...

  • vue和微信小程序的区别、比较

    链接:https://segmentfault.com/a/1190000015684864 一、生命周期 先贴两...

  • 支付宝小程序怎么转成微信小程序

    把支付宝小程序和微信小程序的区别理清的话,把支付宝小程序和微信小程序进行相互转换,其实很简单 wxml: 把项目里...

网友评论

    本文标题:微信小程序和vue的区别

    本文链接:https://www.haomeiwen.com/subject/dfakjhtx.html