小部件语法与小程序语法保持一致,对部分功能有限制,仅支持开发自定义组件,不支持开发「应用」和「页面」。
具体支持范围如下。
全局函数名 |
支持情况 |
说明 |
App() |
不支持 |
配置应用 |
Page() |
不支持 |
配置页面 |
Component() |
支持 |
配置自定义组件 |
getApp() |
不支持 |
获取当前小程序实例 |
getCurrentPages() |
不支持 |
获取当前页面栈的实例 |
具体字段的含义参考官方文档:点击查看 。
参数 |
支持情况 |
说明 |
component |
支持 |
声明是自定义组件 |
usingComponents |
支持 |
声明依赖的自定义组件所在路径 |
组件参数 |
支持情况 |
说明 |
data |
支持 |
组件内部状态 |
props |
支持 |
为外部传入的数据设置默认值 |
methods |
支持 |
组件的方法,可以是事件响应函数或任意的自定义方法 |
onInit |
支持 |
组件生命周期函数,组件创建时触发 |
didMount |
支持 |
组件生命周期函数,组件创建完毕时触发 |
didUpdate |
支持 |
组件生命周期函数,组件更新完毕时触发 |
didUnmount |
支持 |
组件生命周期函数,组件删除时触发 |
ref |
不支持 |
指定组件被ref引用时的返回值 |
mixins |
不支持 |
组件间代码复用机制 |
deriveDataFromProps |
不支持 |
组件生命周期函数,组件创建时和更新前触发 |
属性名 |
支持情况 |
说明 |
data |
支持 |
组件内部状态 |
props |
支持 |
为外部传入的数据设置默认值 |
is |
支持 |
组件路径 |
$page |
不支持 |
组件所属页面实例 |
$id |
不支持 |
组件 id,可直接在组件 axml 中渲染值 |
方法名 |
支持情况 |
说明 |
setData |
支持 |
设置 data 触发视图渲染 |
$spliceData |
不支持 |
设置 data 触发视图渲染 |
分类 |
语法特性 |
支持情况 |
功能说明 |
简单绑定 |
组件属性 |
支持 |
绑定组件的属性值 |
控制属性 |
支持 |
控制组件的渲染行为 |
|
关键字 |
支持 |
true false null undefined typeof |
|
运算 |
三元运算 |
支持 |
?: |
算术运算 |
支持 |
+ - * / % |
|
逻辑判断 |
支持 |
> < == >= <= && || ! |
|
字符串运算 |
支持 |
"foo" + "bar" |
|
数据路径运算 |
支持 |
object.key array[0] |
|
组合 |
数组 |
不支持 |
在模板中定义数组 |
对象 |
不支持 |
在模板中定义对象 |
指令名 |
支持情况 |
功能说明 |
a:if |
支持 |
控制节点是否需要渲染 |
block a:if |
支持 |
控制多个节点是否需要渲染 |
hidden |
不支持 |
控制节点的显示与隐藏 |
指令名 |
支持情况 |
功能说明 |
a:for |
支持 |
指定要循环的数组 |
a:for-item |
支持 |
指定数组当前元素的变量名 |
a:for-index |
支持 |
指定数组当前下标的变量名 |
block a:for |
支持 |
渲染一个包含多节点的结构块 |
a:key |
不需要 |
指定列表项的唯一标识,希望列表项保持特征和状态 |
key |
不需要 |
a:key 更通用的写法,可以填充任意表达式和字符串 |
标签名 |
支持情况 |
功能说明 |
<block> |
支持 |
将多个组件包裹成一个渲染单元 |
<slot> |
支持 |
可以使自定义组件中插入外部调用者传来的 AXML 片段 |
<template> |
不支持 |
在模板中定义定义代码片段 |
<include> |
不支持 |
将目标文件除 <template/> 外整个代码引入 |
<import> |
不支持 |
加载已经定义好的 <template> |
请参考 小部件样式支持范围 文档。