WXML(WeiXin Markup Language),是框架设计的标签语言,结合组件、WXS和事件系统,能够构建页面结构。html
WXML 中的动态数据均来自对应 Page 的 data。面试
例如:内容绑定框架
-----------index.js------------------- <view> <text>{{message}}</text> </view> ------------index.wxml------------------- Page({ data: { message: "hello world", })
属性绑定dom
-----------index.js------------------- <view> <text data-name="{{message}}"></text> </view> ------------index.wxml------------------- Page({ data: { message: "hello", })
运算符绑定网站
-----------index.js-------------------
<view>
<text hidden="{{flag? true:false}}></text>
</view>
------------index.wxml-------------------
Page({
data: {
flag: false,
})
----------index.wxml---------------------- <view> <block wx:for="{{items}}" wx:for-item="item" wx-key="index"> <view>{{index}:{{item.name}}}</view> </block> </view> --------index.js------------------ Page({ data: { items:[ { name: "A" }, { name: "B" }, { name: "C" }, ], })
----------index.wxml---------------------------- <view>今天吃什么?</view> <view wx:if="{{condition === 1}}"> 饺子 </view> <view wx:elif="{{condition === 2}}"> 面试 </view> <view wx:else> 苹果 </view> ------------index.js-------------------------- Page({ data: { items:{ condition: Math.floor(Math.random()*3+1) }} })
----------index.wxml---------------------------------- <template name="msgItem"> <view> <text>{{index}}: {{msg}}</text> <text>Time: {{time}}</text> </view> </template> <template is="msgItem" data="{{...item}}" /> //使用 is 属性,声明须要的使用的模板,而后将模板所须要的 data 传入 ----------index.js-------------------------- Page({ data: { item: { index: 0, msg: 'this is a template', time: '2016-09-15' } } })
import
能够在该文件中使用目标文件定义的template
,如:this
在 item.wxml 中定义了一个叫item
的template
:spa
<!-- item.wxml --> <template name="item"> <text>{{text}}</text> </template>
在 index.wxml 中引用了 item.wxml,就可使用item
模板:设计
<import src="item.wxml" /> <template is="item" data="{{text: 'forbar'}}" />
import 的做用域code
import 有做用域的概念,即只会 import 目标文件中定义的 template,而不会 import 目标文件 import 的 template。xml
如:C import B,B import A,在C中可使用B定义的template
,在B中可使用A定义的template
,可是C不能使用A定义的template
。
include
能够将目标文件除了 <template/>
<wxs/>
外的整个代码引入,至关因而拷贝到 include
位置,如:
<!-- index.wxml --> <include src="header.wxml" /> <view>body</view> <include src="footer.wxml" />
<!-- header.wxml --> <view>header</view>
<!-- footer.wxml --> <view>footer</view>
资料: