溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

小程序內(nèi)動態(tài)綁定類名的示例

發(fā)布時(shí)間:2020-12-22 12:36:14 來源:億速云 閱讀:275 作者:小新 欄目:移動開發(fā)

這篇文章主要介紹小程序內(nèi)動態(tài)綁定類名的示例,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

小程序 開發(fā)中遇到這樣一個(gè)問題...

排行榜開發(fā)的時(shí)候,前三名的樣式不同,其余的樣式一樣。但是都是通過同一元素來遍歷的,當(dāng)時(shí)卡了一下。后來發(fā)現(xiàn)有module模塊化這一概念,于是查了下api,一下子就做出來了。

小程序內(nèi)動態(tài)綁定類名的示例

就是不同名次上邊的樣式根據(jù)實(shí)際情況展示效果。

模塊化

我們可以將一些公共的代碼抽離成為一個(gè)單獨(dú)的 js 文件,作為一個(gè)模塊。模塊只有通過 module.exports 或者 exports 才能對外暴露接口。

通俗的將就是自身獨(dú)立,作用域只作用于該模塊,與js互不影響。

主要代碼

module部分

<wxs module="rank">
 var indexof = function(index){
 switch(index){
 case 0:
 return 'first-price';
 break;
 case 1: 
 return 'second-price';
 break;
 case 2: 
 return 'third-price';
 break;
 }
 };
 module.exports.style = indexof;
 </wxs>

view

 <view class="weui-badge {{rank.style(index)}}">{{index + 1}}</view>

補(bǔ)充:

vue與微信小程序的一些區(qū)別

一.條件渲染

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

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

微信小程序:使用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,或者簡寫為:bind,和本有的class分開寫

<p class="test" v-bind:class="{ active: isActive }"></p>

微信小程序:

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

四.事件處理

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

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

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

<button bindtap="clickMe">點(diǎn)擊我</button>
<button catchtap="clickMe">點(diǎn)擊我</button> //阻止事件冒泡

五.綁定值

VUE:vue動態(tài)綁定一個(gè)變量的值為元素的某個(gè)屬性的時(shí)候,會在變量前面加上冒號:,例:<img :src="imgSrc"/>

微信小程序:綁定某個(gè)變量的值為元素屬性時(shí),會用兩個(gè)大括號括起來。例:<image src="{{imgSrc}}"></image>

六.綁定事件傳參

VUE:vue綁定事件的函數(shù)傳參數(shù)時(shí),可以把參數(shù)寫在函數(shù)后面的括號里

<p @click="changeTab(1)">哈哈</p>

微信小程序:微信小程序的事件我試過只能傳函數(shù)名,至于函數(shù)值,可以綁定到元素中,在函數(shù)中獲取

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

js:

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

七.設(shè)置值

VUE:設(shè)置test的值可以用,this.test = true;獲取test的值可以用this.test.

微信小程序:設(shè)置test的值要用this.setData({test:true});獲取test的值用this.data.test

以上是“小程序內(nèi)動態(tài)綁定類名的示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI