微信小程序 引入公共页面的几种情况
1、不帶參數(shù)
首先在pages文件夾中新建一個template文件夾,文件夾中新建一個template.wxml文件,代碼如下
<!--template.wxml--> <template name="msgItem"><view><text>This is template.wxml文件,我是一個模板</text></view> </template>然后我們書寫我們所要調(diào)用template的頁面index.wxml
<!--index.wxml--> <!-- 聲明需要使用的模板文件 --> <import src ="../template/template.wxml"/><view>This is index.wxml</view> <template is="msgItem"/>注意:
(1)index.wxml中template 標(biāo)簽的is屬性與template.wxml中template 標(biāo)簽的name屬性值相同
(2)index.wxml文件中要通過import標(biāo)簽聲明需要使用的模板文件
運(yùn)行效果:
?
2、帶參數(shù)
首先,修改template.wxml文件,我們給模板添加三個字段,修改后代碼如下
<template name="msgItem"><view><text>This is template.wxml文件,我是一個模板</text><view><text> {{index}}: {{msg1}} </text><text> {{msg2}} </text></view></view> </template>接下來我們在index.wxml中傳遞模板中所需要的三個參數(shù),修改后的代碼如下:
<!--index.wxml--> <!-- 聲明需要使用的模板文件 --> <import src ="../template/template.wxml"/> <view>This is index.wxml</view> <template is="msgItem" data="{{index:1,msg1:'msg1數(shù)據(jù)',msg2:'msg2數(shù)據(jù)'}}"/>運(yùn)行效果:?
?
3、列表item模板
接下來我們就通過一種常見的情況列表數(shù)據(jù)來使用模板,增加對模板的認(rèn)知,直接上修改過的代碼:
//index.js Page({data: {list:[{ name: '張三', age: 15 },{ name: '李四', age: 25 },{ name: '王五', age: 18 },{ name: '趙六', age: 19 },]} }) <!--index.wxml--> <!-- 聲明需要使用的模板文件 --> <import src ="../template/template.wxml"/> <view>This is index.wxml</view> <view wx:for="{{list}}"><template is="msgItem" data="{{name:item.name,age:item.age}}"/> </view> <!--template.wxml--> <template name="msgItem"><view><text> name: {{name}} </text><text> age: {{age}}</text></view> </template>運(yùn)行效果:?
?
4、使用模板樣式
接下來我們就給模板增加樣式文件,然后在需要調(diào)用模板的地方使用該樣式。?
首先在pages/template文件夾中新建一個template.wxss文件,然后對模板文件,添加一個簡單樣式。
<!--template.wxml--> <template name="msgItem"><view class="template_style"><text> name: {{name}} </text><text class="template_age_style"> age: {{age}}</text></view> </template> /* pages/template/template.wxss */ .template_style{border-bottom: solid 2px #999999;padding: 5px;font-size: 18px;color: #000000;} .template_age_style{color: #666666;font-size: 14px; }我們的樣式文件已經(jīng)創(chuàng)建好了,接下來在index.wxml中引入該樣式文件。
/**index.wxss**/ @import "../template/template.wxss";運(yùn)行效果:?
5、調(diào)用不同的模板
有時候,我們有這樣的需求,那就是同一個列表中,item數(shù)據(jù)不同,可能他的樣式也是有很大的區(qū)別,所以我們使用的模板也會對應(yīng)不相同,接下來我們就來實(shí)現(xiàn)這樣需求的小Demo:?
首先修改了一下template.wxml,原本該文件中只有一個template,現(xiàn)在我們創(chuàng)建了兩個,新增的template僅僅多了一行代碼,當(dāng)然了實(shí)際開發(fā)中,需求會比這個難很多,在這里只是為了實(shí)現(xiàn)Demo。
接下來我們在index.wxml中通過age字段調(diào)用不同的模板:
<!--index.wxml--> <!-- 聲明需要使用的模板文件 --> <import src ="../template/template.wxml"/> <view>This is index.wxml</view> <view wx:for="{{list}}"><template is="{{item.age >= 18 ? 'msgItem' : 'msgItem2'}}" data="{{name:item.name,age:item.age}}"/> </view>運(yùn)行效果:?
?
總結(jié)
以上是生活随笔為你收集整理的微信小程序 引入公共页面的几种情况的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS实现响应式布局(自动拆分几列)
- 下一篇: 【移动端 Web】怎么循序渐进地开发一个