Vue3的语法小总结(大纲)快速回顾
发布人:shili8
发布时间:2025-02-19 06:28
阅读次数:0
**Vue3语法小总结**
### 一、组件定义在 Vue3 中,组件定义使用 `defineComponent` 函数来创建一个组件工厂。
javascriptimport { defineComponent } from 'vue' export default defineComponent({ // 组件的选项})
### 二、模板语法Vue3 的模板语法与 Vue2 相同,使用 `v-` 前缀来定义指令。例如:
html<template> <div> {{ message }} <!-- 文本插值 --> <button @click="handleClick">点击</button> <!--事件监听器 --> </div> </template> <script> export default { data() { return { message: 'Hello, Vue!' } }, methods: { handleClick() { console.log('按钮被点击了!') } } } </script>
### 三、响应式数据Vue3 使用 Proxy 来实现响应式数据的监听。
javascriptimport { reactive } from 'vue' const state = reactive({ count:0}) state.count++ console.log(state.count) // 输出:1
### 四、计算属性和侦听器计算属性使用 `computed` 函数来定义,侦听器使用 `watchEffect` 函数。
javascriptimport { computed, watchEffect } from 'vue' export default { data() { return { count:0, doubleCount:0 } }, computed: { doubleCount() { return this.count *2 } }, watchEffect: { onTrack: () => console.log('侦听器被触发!'), onTrigger: () => console.log('侦听器被触发!') } }
### 五、生命周期Vue3 的生命周期函数与 Vue2 相同。
javascriptimport { onMounted, onUpdated, onUnmounted } from 'vue' export default { data() { return { count:0 } }, mounted() { console.log('组件被挂载!') }, updated() { console.log('组件被更新!') }, unmounted() { console.log('组件被卸载!') } }
### 六、插槽Vue3 的插槽与 Vue2 相同。
html<template> <div> <slot name="header">默认头部</slot> <slot>默认内容</slot> <slot name="footer">默认尾部</slot> </div> </template> <script> export default { props: ['name'] } </script>
### 七、过滤器Vue3 的过滤器与 Vue2 相同。
javascriptimport { filter } from 'vue' const formatPrice = (price) => price.toFixed(2) export default { filters: { formatPrice(price) { return formatPrice(price) } } }
### 八、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 九、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 十、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 十一、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 十二、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 十三、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 十四、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 十五、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 十六、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 十七、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 十八、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 十九、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 二十、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 二十一、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 二十二、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 二十三、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.use(filter, { formatPrice(price) { return price.toFixed(2) } })
### 二十四、全局组件Vue3 的全局组件与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.component('my-component', { // 组件选项})
### 二十五、全局指令Vue3 的全局指令与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({ // 组件选项}) app.directive('my-directive', { // 指令选项})
### 二十六、全局过滤器Vue3 的全局过滤器与 Vue2 相同。
javascriptimport { createApp } from 'vue' const app = createApp({