微信小程序-template模版

模版是什么?
就是我们预先写好一段代码,供给重复使用。
实例
/page/common/common.wxml

<template name="demo1">
    <view>我是模版demo1</view>
</template>

/page/index/index.wxml

<import src="../common/common.wxml" />
<view>
    <template is="demo1" />
</view>

我们就成功的将模版demo1 导入进来了。

模版中添加数据
以common.wxml为例子

<template name="demo1">
    <view>{{userInfo.nickName}}</view>
    <view wx:for="data" wx:for-index="index" wx:for-item="item">
                {{index}}=>{{item}}
    </view>
</template>

这个模版里面有需要数据对象支持,是直接引用的page({data:{}})这个中的data 吗? 其实不是的。怎么用呢
以index.wxml为例
假设注册中的data为

var initJson = {
    data:{
        userInfo:{"nickname":"我是勇哥"},
        dataInfos : {
            "name":"勇哥",
            "age" :"22"
        }
    }
}
Page(initJson);
<import src="../common/common.wxml" />
<view>
    <!--方法一,自己领悟。其中的userInfo引用的是注册表中data.userInfo-->
    <template is="demo1" data="{{userInfo,data:dataInfos }}" />
    <!--方法二。 -->
    <template is="demo1" data="{{userInfo:{"nickname":"aaaa"},data:[1,2,3,4,5,6,7]}}" />
</view>

模版也支持wxml模版语法,也就是说也可以在里面添加wx:if wx:elseif 等语句。
用好了,减少代码量。降低维护难度。以及提升开发效率。
可以将一个个模版看成一个个封装好的函数,需要的时候直接导入模版文件,直接调用就好了,当然有参数需要的模版还是要将数据对象传入进去的。

import 模式导入的文件只能识别template 标签标记的代码块
还有一个include 模式导入的文件就恰恰和import 的模式对应了。

include模式导入的文件

/page/demo2/demo2.wxml

<view>
    include 模式导入文件
</view>
<template name="demo2_tmp">
    <view>
        我是template2 
    </view>
</template>

/page/demo1/demo1.wxml

<include src="../demo1/demo1.xml" />

<template is="demo2_tmp" />

运行看看效果吧,你会发现<template is="demo2_tmp" />这个运行不了而报错,提示你未定义,那是因为include模式导入的文件只导入非template模版标签的组件。其它的不导入。

小注意:<import src="" /> 导入的文件也包含<import src="" /> 不会进行二次导入的。
也就是 如果A导入B(import),B需要导入C(import),那么A只会导入B,而不会导入C。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序提供了许多模板,可以在模板基础上进行修改,实现自己的需求。对于商品列表,可以使用微信小程序中提供的模板来快速实现。 首先,在微信开发者工具中创建一个新的小程序项目,然后选择模板中的“商城模板”或“商品列表模板”,这些模板已经包含了商品列表的基础布局和样式。接着,将自己的商品数据传递给模板,即可在页面中显示商品列表。 具体实现方法如下: 1. 在小程序项目中新建一个页面,命名为“商品列表”。 2. 在“商品列表”页面中引入模板组件,在 WXML 文件中添加以下代码: ``` <import src="../template/goods-list/goods-list.wxml" /> <template is="goods-list" data="{{goodsList: goodsData}}"></template> ``` 其中,`goods-list` 是模板组件的名称,`goodsData` 是传递给模板的商品数据。 3. 在 JS 文件中定义商品数据,例如: ``` Page({ data: { goodsData: [ { id: 1, name: '商品1', price: 100, image: 'https://example.com/image1.jpg' }, { id: 2, name: '商品2', price: 200, image: 'https://example.com/image2.jpg' }, // ... ] } }) ``` 4. 在模板组件的 WXML 文件中,使用 `wx:for` 循环遍历商品数据,生成商品列表: ``` <view class="goods-list"> <view wx:for="{{goodsList}}" wx:key="id" class="goods-item"> <image class="goods-image" src="{{item.image}}" /> <view class="goods-name">{{item.name}}</view> <view class="goods-price">{{item.price}}</view> </view> </view> ``` 5. 在模板组件的 WXSS 文件中,定义商品列表的样式: ``` .goods-list { display: flex; flex-wrap: wrap; } .goods-item { width: 50%; padding: 10rpx; } .goods-image { width: 100%; height: 200rpx; } .goods-name { font-size: 28rpx; margin-top: 10rpx; } .goods-price { font-size: 24rpx; color: #f44; margin-top: 10rpx; } ``` 以上就是使用模板实现微信小程序商品列表的基本步骤,你可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值