/*! For license information please see 3004.9238b459.js.LICENSE.txt */ (self.webpackChunk=self.webpackChunk||[]).push([["3004"],{17169:function(s,n,a){"use strict";a.r(n);var l=a("80681");let t=["innerHTML"];n.default={setup:()=>({html:""}),render:()=>((0,l.wg)(),(0,l.iD)("div",{class:"van-doc-markdown-body",innerHTML:'
\u5EFA\u7ACB\u7236\u5B50\u7EC4\u4EF6\u4E4B\u95F4\u7684\u5173\u8054\u5173\u7CFB\uFF0C\u8FDB\u884C\u6570\u636E\u901A\u4FE1\u548C\u65B9\u6CD5\u8C03\u7528\uFF0C\u57FA\u4E8E provide
\u548C inject
\u5B9E\u73B0\u3002
\u5728\u7236\u7EC4\u4EF6\u4E2D\u4F7F\u7528 useChildren
\u5173\u8054\u5B50\u7EC4\u4EF6:
import { ref } from 'vue';\nimport { useChildren } from '@vant/use';\n\nconst RELATION_KEY = Symbol('my-relation');\n\nexport default {\n setup() {\n const { linkChildren } = useChildren(RELATION_KEY);\n\n const count = ref(0);\n const add = () => {\n count.value++;\n };\n\n // \u5411\u5B50\u7EC4\u4EF6\u63D0\u4F9B\u6570\u636E\u548C\u65B9\u6CD5\n linkChildren({ add, count });\n },\n};\n
\n\u5728\u5B50\u7EC4\u4EF6\u4E2D\u4F7F\u7528 useParent
\u83B7\u53D6\u7236\u7EC4\u4EF6\u63D0\u4F9B\u7684\u6570\u636E\u548C\u65B9\u6CD5:
import { useParent } from '@vant/use';\n\nexport default {\n setup() {\n const { parent } = useParent(RELATION_KEY);\n\n // \u8C03\u7528\u7236\u7EC4\u4EF6\u63D0\u4F9B\u7684\u6570\u636E\u548C\u65B9\u6CD5\n if (parent) {\n parent.add();\n console.log(parent.count.value); // -> 1\n }\n },\n};\n
\nfunction useParent<T>(key: string | symbol): {\n parent?: T;\n index?: Ref<number>;\n};\n\nfunction useChildren(key: string | symbol): {\n children: ComponentPublicInstance[];\n linkChildren: (value: any) => void;\n};\n
\n\u53C2\u6570 | \n\u8BF4\u660E | \n\u7C7B\u578B | \n
---|---|---|
parent | \n\u7236\u7EC4\u4EF6\u63D0\u4F9B\u7684\u503C | \nany | \n
index | \n\u5F53\u524D\u7EC4\u4EF6\u5728\u7236\u7EC4\u4EF6\u7684\u6240\u6709\u5B50\u7EC4\u4EF6\u4E2D\u5BF9\u5E94\u7684\u7D22\u5F15\u4F4D\u7F6E | \nRef<number> | \n
\u53C2\u6570 | \n\u8BF4\u660E | \n\u7C7B\u578B | \n
---|---|---|
children | \n\u5B50\u7EC4\u4EF6\u5217\u8868 | \nComponentPublicInstance[] | \n
linkChildren | \n\u5411\u5B50\u7EC4\u4EF6\u63D0\u4F9B\u503C\u7684\u65B9\u6CD5 | \n(value: any) => void | \n