From 31df16465659cd76d5bc13884f08b6f1dce4e271 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 11 Oct 2022 16:39:10 +0800 Subject: [PATCH] doc: update `vue2.md`. (#5) --- docs/vue2.md | 124 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 93 insertions(+), 31 deletions(-) diff --git a/docs/vue2.md b/docs/vue2.md index eb70f54..b735adf 100644 --- a/docs/vue2.md +++ b/docs/vue2.md @@ -1188,6 +1188,55 @@ vm.selected.number // => 123 组件基础 --- +### 单文件组件 + + +- 将 `HTML`/`CSS`/`JS` 三部分存放到一个 `Hello.vue` 文件中 + ```html + + + + ``` +- 使用 `Hello.vue` 组件 + ```html + + + ``` + + ### 基本示例 @@ -1232,34 +1281,6 @@ new Vue({ ``` -### `data` 必须是一个函数 - -```js -data: function () { - return { - count: 0 - } -} -``` - -组件的 `data` 选项必须是一个函数 - -### 向子组件传递数据 - -```js -Vue.component('blog-post', { - props: ['title'], - template: '

{{ title }}

' -}) -``` - -当值传递给一个 `prop` `attribute` 的时候,变成了组件实例的一个 `property` - -```html - - -``` - ### 单个根元素 ```js {4} @@ -1285,6 +1306,34 @@ Vue.component('blog-post', { ``` +### 向子组件传递数据 + +```js +Vue.component('blog-post', { + props: ['title'], + template: '

{{ title }}

' +}) +``` + +当值传递给一个 `prop` `attribute` 的时候,变成了组件实例的一个 `property` + +```html + + +``` + +### `data` 必须是一个函数 + +```js +data: function () { + return { + count: 0 + } +} +``` + +组件的 `data` 选项必须是一个函数 + ### 监听子组件事件 @@ -1296,8 +1345,7 @@ Vue.component('blog-post', {

{{ post.title }}

@@ -1355,6 +1403,8 @@ methods: { ### 在组件上使用 v-model +自定义事件也可以用于创建支持 `v-model` 的自定义输入组件。 + ```html ``` @@ -1362,7 +1412,19 @@ methods: { 等价于 ```html - + +``` + +当用在组件上时,v-model 则会这样: + +```html + ``` 为了让它正常工作,这个组件内的 \ 必须: