Хотя язык разработки апплета может работать только в апплете WeChat, его дизайн также следует основной особенности основного фреймворка интерфейса — компонентизации.Есть два способа реализации компонентизации в апплете:template 模版
а такжеComponent 组件
. Эти два метода подходят для разных сценариев.
-
template 模版
В основном используемый для отображения, шаблон не включает обработку событий, а логика событий, которую необходимо обработать, размещается на странице, вызывающей шаблон. Одинtemplate 模版
содержит толькоwxml
wxss
документ. -
Component 组件
Как отдельный функциональный модуль он может включать в себя не только отображение страниц, но и обработку событийной логики модуля. как страница,Component 组件
может содержатьwxml
wxss
js
json
документ.
1. Создатьtemplate
трафарет
отличный отpage
а такжеComponent
, невозможно быстро создать в инструментах разработчикаtemplate 模版
. Поэтому его нужно создавать отдельноwxss
wxml
документ.
template.wxml
синтаксис файла
Одинtemplate.wxml
используется в файле<template>
Тег содержит шаблон,template.wxml
файл может содержать несколько<template>
шаблон, использоватьname
атрибут в качестве имени шаблона.
В шаблоны можно принимать переменные, использовать{{}}
экспонат. Передатель переменной передается страницей, вызывающей шаблон.
<template name="A">
<text>template name: {{name}}</text>
</template>
<template name="B">
<text>template name: {{name}} {{msg}}</text>
</template>
template.wxss
Файл стиля шаблона
Шаблоны могут иметь собственные файлы стилей.
text{
color: #cccccc;
}
2. Цитатыtemplate
трафарет
-
template
Необходимо использовать ссылки на шаблоны<import>
Этикетка. этикеткаsrc
Атрибут — это путь, по которому нужно сослаться на шаблон. -
template
Использование шаблонов<template>
Этикетка. использоватьis
атрибут для различения шаблонов, определенных в файле шаблона. - использовать
data
Данные переданы в шаблон.
index.wxml
<import src="../tpls/template.wxml" />
<view>
<template is="A" data="{{name}}"/>
<template is="B" data="{{name, msg}}"/>
<view>
3. Стиль эталонного шаблона
на странице вызоваwxml
процитировано вtemplate.wxml
После этого на стиль шаблона ссылаться не будут, его нужно вызывать в шапке страницыwxss
упоминается отдельно вtemplate.wxss
документ.
index.wxss
@import "./tpls/template.wxss"
4. Обработка событий в файлах шаблонов
Событие, определенное в шаблоне, должно быть выполнено на вызывающей странице.template.wxml
<template name="A">
<text bindtap="handleTap">template name: {{name}}</text>
</template>
index.js
Page({
data: {},
handleTap() {
console.log('template 模版 click')
}
})
5. импорт имеет объем
Импорт имеет концепцию объема, то есть будет импортирован только шаблон, определенный в целевом файле, а шаблон, импортированный в целевой файл, не будет импортирован.Короче говоря, импорт не имеет рекурсивных характеристик.
Например: C относится к B, B относится к A, шаблон, определенный B, может использоваться в C, шаблон, определенный A, может использоваться в B, но C не может использовать шаблон, определенный A.
6. включить в шаблон шаблона
как будто с помощью<import src="xx/xx/xx.wxml"> <tempalte is="A" />
Цитирование аналогично использованию шаблонов, вы также можете использовать<include src="xx/xx/xx.wxml />"
для ссылки на шаблон.
нужно знать, это:
- использовать
<include>
При ссылке на файл шаблона блоки шаблона файла шаблона не могут быть разделены, поэтому используйте<include>
В указанном файле шаблона может быть определен только один блок шаблона. - include может добавлять объектные файлы, кроме
<template/> <wxs/>
Импорт всего внешнего кода эквивалентен его копированию во включаемое расположение.
<!-- index.wxml -->
<include src="header.wxml"/>
<view> body </view>
<include src="footer.wxml"/>
<!-- header.wxml -->
<view> header </view>
<!-- footer.wxml -->
<view> footer </view>