小程序--引用公共模板方法/共同header/footer

微信小程序中,如果几个页面中需要引用同一个header/footer,当定义了公共模板时,有两种引用方法如下:

方法一:在公共模板中定义template元素,利用<import/> 方法 ,这种方式只会显示公共模板的template里面的内容,之外的内容不会显示

wxml:

<import src='公共模板地址'/>

<template is='模板里面template定义的name名称' data='{{引入的数据1,引入数据2}}'></template> 注意:这里的data='{{引入的数据1,引入数据2}}' 是在template中要提取js文件中的data数据里面的key名字,否则无法显示

公共模板的wxml:在公共模板中必须定义每一个template的的name的名字,否则引用的时候无法得知引用具体某一个;

<template name='header'><!--必须有有name不然import方式无法判断到底要引用哪一个tempalte-->
{{title.header}}<!--这个数据只是提取要引用的文件的里面js里面定义的对应的数据,如果在其他文件中定义不在要引用的文件中无效-->
</template>

要引用的文件js定义数据:

data: {
title:{header:'这是template的header部分',footer:'这是template的footer部分',other:'这是tempalt外部部分'}
}

页面结果:

 

 方法二:

<include src="公共模板地址"/>这种方式是引入了模板中除了tempalte以外的所有内容。
<include src="../../template/footer.wxml"/> 

公共模板的wxml:

{{title.other}}

js定义的数据:

 title:{header:'news里面的的header',footer:'这是template的footer部分'}

页面结果:

 

总结:import方式和imclude方式的不同在于前者仅引用公共模板中的template里面的内容后者仅引用template以外的内容,显而易见,include方式更简单一些,在wxml中只需要一句话即可。

 

posted @ 2017-01-18 13:39  司马懿是一朵小花  阅读(8429)  评论(0编辑  收藏  举报