+ Ask a yes/no question: + +
+{{ answer }}
+ +``` + -- Gitee From a6ebe93461d3de7b7a8c54d740a868e5ac6aa604 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=B8=85?= <3309605189@qq.com> Date: Sun, 16 Apr 2023 12:58:07 +0000 Subject: [PATCH 3/4] =?UTF-8?q?add=2029=E7=8E=8B=E5=B8=85/20230413?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=BC=95=E7=94=A8.md.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 王帅 <3309605189@qq.com> --- ...41\346\235\277\345\274\225\347\224\250.md" | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 "29\347\216\213\345\270\205/20230413\346\250\241\346\235\277\345\274\225\347\224\250.md" diff --git "a/29\347\216\213\345\270\205/20230413\346\250\241\346\235\277\345\274\225\347\224\250.md" "b/29\347\216\213\345\270\205/20230413\346\250\241\346\235\277\345\274\225\347\224\250.md" new file mode 100644 index 0000000..65c9c51 --- /dev/null +++ "b/29\347\216\213\345\270\205/20230413\346\250\241\346\235\277\345\274\225\347\224\250.md" @@ -0,0 +1,54 @@ +## 模板引用 +虽然 Vue 的声明性渲染模型为你抽象了大部分对 DOM 的直接操作,但在某些情况下,我们仍然需要直接访问底层 DOM 元素。要实现这一点,我们可以使用特殊的 ref attribute: + +```vue + +``` +ref 是一个特殊的 attribute,和 v-for 章节中提到的 key 类似。它允许我们在一个特定的 DOM 元素或子组件实例被挂载后,获得对它的直接引用。这可能很有用,比如说在组件挂载时将焦点设置到一个 input 元素上,或在一个元素上初始化一个第三方库。 + +## 访问模板引用 +为了通过组合式 API 获得该模板引用,我们需要声明一个同名的 ref: + +```vue + + + + + +如果不使用 + + + + +``` + +当不使用构建步骤时,一个 Vue 组件以一个包含 Vue 特定选项的 JavaScript 对象来定义: + + +```js +import { ref } from 'vue' + +export default { + setup() { + const count = ref(0) + return { count } + }, + template: ` + ` + // 或者 `template: '#my-template-element'` +} +``` +这里的模板是一个内联的 JavaScript 字符串,Vue 将会在运行时编译它。你也可以使用 ID 选择器来指向一个元素 (通常是原生的 元素),Vue 将会使用其内容作为模板来源。 + +上面的例子中定义了一个组件,并在一个 .js 文件里默认导出了它自己,但你也可以通过具名导出在一个文件中导出多个组件。 + +## 使用组件 + +```vue + + + +