From b42cd8cec8925971ea00b219078ea6126e832ad6 Mon Sep 17 00:00:00 2001 From: handongxun Date: Fri, 9 Aug 2019 12:26:05 +0800 Subject: [PATCH] docs: add --- docs/component/_sidebar.md | 1 + docs/component/recycle-list.md | 164 +++++++++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 docs/component/recycle-list.md diff --git a/docs/component/_sidebar.md b/docs/component/_sidebar.md index eaadb28ed..e73be05c9 100644 --- a/docs/component/_sidebar.md +++ b/docs/component/_sidebar.md @@ -45,6 +45,7 @@ * [open-data](component/open-data.md) * App nvue专用组件 * [barcode](component/barcode.md) + * [recycle-list](component/recycle-list.md) * 扩展组件(uni ui) * [uni-ui整体介绍](component/README?id=uniui) * [Badge 数字角标](https://ext.dcloud.net.cn/plugin?id=21) diff --git a/docs/component/recycle-list.md b/docs/component/recycle-list.md new file mode 100644 index 000000000..c13a5a317 --- /dev/null +++ b/docs/component/recycle-list.md @@ -0,0 +1,164 @@ +#### recycle-list + +app端nvue专用组件。 + +`` 是一个新的列表容器,具有回收和复用的能力,可以大幅优化内存占用和渲染性能。 + +此组件自HBuilderX 2.1.5+起支持。 + +#### 子组件 +`` 只能使用 `` 作为其直接子节点,使用其他节点无效。 + +#### + 代表的是列表每一项的模板,它只用来描述模板的结构,并不对应实际的节点。`` 的个数只表示模板的种类数,真实列表项的个数是由数据决定的。 + + +属性|说明 +:--|:--| +case|声明了当前模板的类型,只有和数据中的类型与当前类型匹配时才会渲染,语义和编程语言里的 case 一致。所有模板中最多只会匹配到一项,按照模板的顺序从上到下匹配,一旦匹配成功就不在继续匹配下一个。 +default|表示当前模板为默认模板类型,不需要指定值。如果数据项没有匹配到任何 case 类型,则渲染带有 default 模板。如果存在多个 default,则只会使用第一个默认模板。 +key|可选属性,用于指定列表数据中可以作为唯一标识的键值,可以优化渲染性能。 + +- warning 属性的省略 - 如果没写 `switch`,无论有没有写 `case` 或 `default`,都只使用第一个模板 - 在写了 `switch` 的情况下,`case` 和 `default` 必须写一个,否则该模板将会被忽略 + + +属性 + +- for +在 `` 添加 for 属性即可描述如何循环展开列表的数据,语法和 Vue 的 v-for 指令类似,但是它循环的是自己内部的子节点,并不是当前节点。写法: + - `alias in expression` + - `(alias, index) in expression` +- switch +在 `` 添加 switch 属性可以用来指定数据中用于区分子模板类型的字段名,语义和编程语言里的 switch 一致,配合 `` 中的 case 和 default 属性一起使用。 +如果省略了 switch 属性,则只会将第一个 `` 视为模板,多余的模板将会被忽略。 + +``` + + + - A {{i}} - + + + - B {{i}} - + + +``` + +可复用的组件 + +在 `` 中使用的子组件也将被视为模板,在开发组件时给 `