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({

