溫馨提示×

溫馨提示×

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

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

微信小程序中template模板有什么用

發(fā)布時間:2021-07-02 14:58:06 來源:億速云 閱讀:112 作者:小新 欄目:web開發(fā)

這篇文章主要介紹了微信小程序中template模板有什么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

微信小程序 template模板詳解

如下圖,我在做華企商學院小程序的時候,課程搜索結(jié)果頁和課程列表頁結(jié)構(gòu)是完全一樣的,這時就非常適合使用模板來完成頁面搭建。實現(xiàn)一次定義,到處使用。

微信小程序中template模板有什么用微信小程序中template模板有什么用

模板

一、定義模板

1、新建一個template文件夾用來管理項目中所有的模板;
2、新建一個courseList.wxml文件來定義模板;
3、使用name屬性,作為模板的名字。然后在<template/>內(nèi)定義代碼片段。

注意:

a.可以看到一個.wxml文件中可以定義多個模板,只需要通過name來區(qū)分;

b.模板中的數(shù)據(jù)都是展開之后的屬性。

<template name="courseLeft">
  <navigator url="../play/play?courseUuid={{courseUuid}}&isCompany={{isCompany}}">
    <view class="item mr26">
      <image src="{{imagePath}}" mode="aspectFill"></image>
      <view class="course-title">
        <text class="title">{{courseName}}</text>
        <text class="author">- {{teacherName}}</text>
      </view>
      <view class="course-info clearfix">
        <view class="fl"><text class="play">{{playCount}}</text></view>
        <view class="fr"><text class="grade">{{score}}</text></view>
      </view>
      <view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
    </view>
  </navigator>
</template>

<template name="courseRight">
  <navigator url="../play/play?courseUuid={{courseUuid}}&isCompany={{isCompany}}">
    <view class="item">
      <image src="{{imagePath}}" mode="aspectFill"></image>
      <view class="course-title">
        <text class="title">{{courseName}}</text>
        <text class="author">- {{teacherName}}</text>
      </view>
      <view class="course-info clearfix">
        <text class="play fl">{{playCount}}</text>
        <text class="grade fr">{{score}}</text>
      </view>
      <view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
    </view>
  </navigator>
</template>

二、使用模板

1、使用 is 屬性,聲明需要的使用的模板

<import src="../../templates/courseList.wxml"/>

2、將模板所需要的 data 傳入,一般我們都會使用列表渲染。

<block wx:for="{{courseList}}">
  <template is="{{index%2 === 0 ? 'courseLeft' : 'courseRight'}}" data="{{...item}}"></template>
</block>

注意:

a.可以通過表達式來確定使用哪個模板is="{{index%2 === 0 ? 'courseLeft' : 'courseRight'}}"

或者通過wx:if來確定。index是數(shù)組當前項的下標。

<template wx:if="{{index%2 === 0}}" is="courseLeft" data="{{...item}}"></template>
<template wx:else is="courseRight" data="{{...item}}"></template>

b. data 是要模板渲染的數(shù)據(jù),data="{{...item}}" 寫法是ES6的寫法,item是wx:for當前項,... 是展開運算符,在模板中不需要再{{item.courseName}} 而是直接{{courseName}} 。

三、模板樣式

1、在新建模板的時候同時新建一個courseList.wxss 的文件,與CSS同樣的寫法控制樣式。

2、在需要使用模板的頁面 .wxss文件中import進來;或者直接在app.wxss中引入,這樣只需要一次引入,其他文件就不用引入了。

@import url("../template/courseList.wxss");

感謝你能夠認真閱讀完這篇文章,希望小編分享的“微信小程序中template模板有什么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!

向AI問一下細節(jié)

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

AI