微信小程序技术贴 第1篇
WXML 提供两种文件引用方式import
和include
。
import
import
可以在该文件中使用目标文件定义的template
,如:
在 中定义了一个叫item
的template
:
在 中引用了 ,就可以使用item
模板:
import 的作用域
import 有作用域的概念,即只会 import 目标文件中定义的 template,而不会 import 目标文件 import 的 template。
如:C import B,B import A,在C中可以使用B定义的template
,在B中可以使用A定义的template
,但是C不能使用A定义的template
。
include
include
可以将目标文件除了 外的整个代码引入,相当于是拷贝到 include
位置,如:
什么是事件事件是视图层到逻辑层的通讯方式。事件可以将用户的行为反馈到逻辑层进行处理。事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数。事件对象可以携带额外信息,如 id, dataset, touches。
事件的使用方式
微信小程序技术贴 第2篇
运行效果:
基础库 开始支持,低版本需做兼容处理。
即使启用了样式隔离 isolated
,组件仍然可以在局部引用组件所在页面的样式或父组件的样式。
例如,如果在页面 wxss 中定义了:
在这个组件中可以使用 ~
来引用这个类的样式:
如果在一个组件的父组件 wxss 中定义了:
在这个组件中可以使用 ^
来引用这个类的样式:
也可以连续使用多个 ^
来引用祖先组件中的样式。
微信小程序技术贴 第3篇
在以上例子中,组件的属性 propA
和 propB
将收到页面传递的数据。页面可以通过 setData
来改变绑定的数据字段。
运行效果:
注意:这样的数据绑定只能传递 JSON 兼容数据。自基础库版本 开始,还可以在数据中包含函数(但这些函数不能在 WXML 中直接调用,只能传递给子组件)。
在组件的 wxml 中可以包含 slot
节点,用于承载组件使用者提供的 wxml 结构。
默认情况下,一个组件的 wxml 中只能有一个 slot 。需要使用多 slot 时,可以在组件 js 中声明启用。
此时,可以在这个组件的 wxml 中使用多个 slot ,以不同的 name
来区分。
使用时,用 slot
属性来将节点插入到不同的 slot 上。
组件对应 wxss
文件的样式,只对组件wxml内的节点生效。编写组件样式时,需要注意以下几点:
除此以外,组件可以指定它所在节点的默认样式,使用 :host
选择器(需要包含基础库 或更高版本的开发者工具支持)。