微信小程式 模板


模板


WXML提供模板(template),可以在模板中定義程式碼片段,然後在不同的地方呼叫。

定義範本


使用name屬性,作為範本的名字。然後在<template/>內定義程式碼片段,如:

<!--
  index: int
  msg: string
  time: string
-->
<template name="msgItem">
  <view>
    <text> {{index}}: {{msg}} </text>
    <text> Time: {{time}} </text>
  </view>
</template>

使用模板


使用is屬性,宣告所需的使用的模板,接著將範本所需的data傳入,如:

<template is="msgItem" data="{{...item}}"/>
Page({
  data: {
    item: {
      index: 0,
      msg: 'this is a template',
      time: '2016-09-15'
    }
  }
})

is屬性可以使用Mustache語法,在執行時決定具體需要渲染哪個範本:

<template name="odd">
  <view> odd </view>
</template>
<template name="even">
  <view> even </view>
</template>

<block wx:for="{{[1, 2, 3, 4, 5]}}">
    <template is="{{item % 2 == 0 ? 'even' : 'odd'}}"/>
</block>

範本的作用域

範本擁有自己的作用域,只能使用data傳入的資料。