vue和小程序的一些区别

条件渲染

vue:使用v-if指令,v-else表示v-if的else块,v-else-if表示v-if 的“else-if 块”

div v-if="type === 'A'">
 A
</div>
<div v-else-if="type === 'B'">
 B
</div>
<div v-else-if="type === 'C'">
 C
</div>
<div v-else>
 Not A/B/C
</div>

微信小程序:使用wx:if,wx:else表示wx:if的else块,wx:elif表示wx:if的"else-if"块

<view wx:if="{{length > 5}}"> 1 </view>
<view wx:elif="{{length > 2}}"> 2 </view>
<view wx:else> 3 </view>

显示隐藏元素

VUE:v-show="..."

  微信小程序:hidden="{{...}}"

绑定class

vue:用v-bind,或者简写为“:”,和本有的class分开写

<div class="test" :class="{ active: isActive }"></div>

微信小程序:

<view class="test {{isActive ? 'active':'' }}"></view>

事件处理

VUE:使用v-on:event绑定事件,或者使用@event绑定事件

<button v-on:click="count += 1">Add</button>
<button v-on:click.stop="count+=1">Add</button> //阻止事件冒泡

微信小程序:用bindtap(bind+event),或者catchtap(catch+event)绑定事件

<button bindtap="clickMe">点击</button>
<button catchtap="clickMe">点击</button> //阻止事件冒泡

绑定值

VUE:vue动态绑定一个变量的值为元素的某个属性的时候,用v-bind或:,例:

<img :src="imgSrc"/>

微信小程序:绑定某个变量的值为元素属性时,会用两个大括号括起来。例:

<image src="{{imgSrc}}"></image>

  

绑定事件传参

VUE:vue绑定事件的函数传参数时,可以把参数写在函数后面的括号里

<div @click="changeTab(1)">hello vue</div>

微信小程序:微信小程序的事件的参数可以绑定到自定义属性里,在函数中获取

<view data-tab="1" catchtap="changeTab">hello miniProgram</view>

 js:

changeTab(e){
  var _tab = e.currentTarget.dataset.tab; 
}

获取&设置data里的值

VUE:设置test的值可以用,this.test = true;获取test的值可以用this.test

微信小程序:设置test的值要用this.setData({test:true});获取test的值用this.data.test

vue和小程序是有很多地方相似的,当然也有许多区别,暂时写到这,后面补上~~~~~~

原文地址:https://www.cnblogs.com/isommer/p/12771067.html