From d796b5f6a25daa478efc869ad5ef0327e8c04e36 Mon Sep 17 00:00:00 2001 From: yutent Date: Fri, 22 Sep 2023 17:02:57 +0800 Subject: [PATCH] Update Component --- Component.md | 80 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 62 insertions(+), 18 deletions(-) diff --git a/Component.md b/Component.md index bb397dc..1b3a5fd 100644 --- a/Component.md +++ b/Component.md @@ -5,7 +5,7 @@ ## 静态属性/方法 ### 1. watches`[]` -> 用于声明一些需要监听的属性。正常来说, 会很少需要设置这个, 大多数情况下静态属性`props`中的`key`, 都会被监听。 +> `v1.10.7`新增。用于声明一些需要监听的属性。正常来说, 会很少需要设置这个, 大多数情况下因为静态属性`props`中的`key`默认会监听, 已经足够了。某些属性, 不想定义到`props`里, 但是又想被监听到变化, 这时候就可以在这个属性中声明一下。 ### 2. props`` @@ -114,23 +114,67 @@ if (!customElements.get('foo-blabla')) { - - - - - - - - - - - - - - - - - +## 实例属性/方法 + +### 1. keepAlive +> 这是框架的保留关键字属性, 默认为`false`. 可以组件被移除之前修改它的值。这个值会影响组件被移出文档或移入文档时的逻辑处理。 +>> 也可以在组件使用时, 添加`keep-alive`属性, 无需赋值, 只要有此属性, 它的值永远为`true`。 + +```html + +
+ +
+ +``` + +### 2. render() +> 这是用来返回模板的方法, 这里就不多说了, 详细请看 [【Template文档】](./template)。 + + +### 3. $requestUpdate() +> 这是用来手动更新视图渲染的方法。一般情况下, 定义在`props`中的属性, 值变化时会自动更新视图, 但如何你模板中使用到了不在`props`中的属性, 这些属性的值发生变化时, 视图不会更新的, 需要时可以调用此方法手动更新。 + + +### 4. $on(name``, callback``, options``) +> 事件监听的方法, 用此方法, 可以对当前组件自身定义任意事件监听。 + + +### 5. $off(name``, callback``, options``) +> 注销事件绑定的方法。与`$on()`对应。 + + +### 6. $emit(name``, data``, cancelBubble``) +> 这是用于主动触发任意事件的方法, 其中, `data`的内容, 全合并进形参`event`中。`cancelBubble`为是否取消事件冒泡。为true时, 事件不会往上冒泡。 + + + + +## 生命周期 + +### 1. created() +> 这是在组件刚实例化时触发。 此时视图还未初始化完成, 不可进行任何`DOM`操作, 但可以对组件属性进行赋值或其他的逻辑处理。 + + +### 2. mounted() +> 这是在组件初始化完成时触发, 此时可以进行任意的DOM操作和任意的逻辑处理。 + +### 3. updated() +> 这是视图发生变化时触发。`mounted`之前, 不会触发`updated`。 + + +### 4. unmounted() +> 组件被移除出文档树时触发。同时组件中一切事件绑定也会被销毁(当组件被设置为`keep-alive`时除外)。 + + +### 5. activated() +> `v1.10.1`新增。 当且仅当组件被设置为`keep-alive`, 且组件初始化完成时触发, 时机同`mounted`, 但比`mounted`先触发。 +>> 另外, 在[`wkitd`](https://git.wkit.fun/bytedo/wkitd)框架下, 组件作为路由页面时, 这个回调也会在切换路由时触发。 + + +### 6. deactivated() +> `v1.10.1`新增。 当且仅当组件被设置为`keep-alive`, 且组件被移出文档树时触发, 时机同`unmounted`。 +>> 另外, 在[`wkitd`](https://git.wkit.fun/bytedo/wkitd)框架下, 组件作为路由页面时, 这个回调也会在切换路由时触发。