vue3基础

前言

Vue 3 是一个渐进式JavaScript框架,用于构建用户界面和单页应用程序。以下是一些Vue 3的基础知识:

创建Vue应用

在Vue 3中,我们通过创建一个Vue应用实例来开始:

复制代码
const { createApp } = Vue

createApp({
  data() {
    return {
      message: 'Hello Vue!'
    }
  }
}).mount('#app')

HTML部分:

复制代码
<div id="app">{{ message }}</div>

响应式数据

Vue使用响应式系统,当数据变化时,视图会自动更新。

  • data 函数返回一个对象,该对象的属性是响应式的。

模板语法

Vue使用基于HTML的模板语法,允许你声明式地将数据渲染进DOM。

  • 插值:{``{ variable }}
  • 指令:v-bind:href="url" 或简写为 :href="url"

属性和方法

  • methods 对象包含Vue实例的方法。

    methods: {
    reverseMessage() {
    this.message = this.message.split('').reverse().join('');
    }
    }

计算属性和侦听器

  • computed 属性是声明式的依赖性计算值。

    computed: {
    reversedMessage() {
    return this.message.split('').reverse().join('');
    }
    }

  • watch 侦听器用于观察和响应Vue实例上的数据变动。

    watch: {
    message(newVal, oldVal) {
    // 执行操作
    }
    }

类和样式绑定

  • v-bind:classv-bind:style 用于动态绑定类和样式。

条件渲染

  • v-ifv-else-ifv-else 用于条件性地渲染一块内容。

列表渲染

  • v-for 指令基于一个数组来渲染一个列表。

  • {{ item.text }}

事件处理

  • v-on 或简写 @ 用于监听DOM事件。

    <button @click="reverseMessage">Reverse Message</button>

表单输入绑定

  • v-model 指令在表单输入和应用状态之间创建双向绑定。

生命周期钩子

Vue实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模板、挂载DOM、渲染、更新、卸载等一系列过程,我们可以在这些过程中使用生命周期钩子。

  • beforeCreate
  • created
  • beforeMount
  • mounted
  • beforeUpdate
  • updated
  • beforeUnmount
  • unmounted

组件

组件是Vue应用的核心,它们是可复用的Vue实例。

复制代码
const MyComponent = {
  data() {
    return { /* ... */ }
  },
  template: `<div>...</div>`
}

createApp(MyComponent).mount('#app')
相关推荐
xkxnq1 分钟前
第三阶段:Vue 路由与状态管理(第 45 天)(路由与状态管理实战:开发一个带登录权限的单页应用)
前端·javascript·vue.js
编程大师哥1 分钟前
JavaScript 和 Python 哪个更适合初学者?
开发语言·javascript·python
Irene19917 分钟前
Vue 3 中的具名插槽仍然完全支持,Vue 2 的旧语法 Vue 3 中已废弃
vue.js·slot
方方洛16 分钟前
技术实践总结:schema-bridgion:json、xml、yaml、toml文件相互转换
xml·前端·typescript·node.js·json
2601_9495758639 分钟前
Flutter for OpenHarmony二手物品置换App实战 - 自定义组件实现
android·javascript·flutter
object not found42 分钟前
基于uniapp开发小程序自定义顶部导航栏状态栏标题栏
前端·javascript·小程序·uni-app
Irene19911 小时前
v-model 在 Vue2 和 Vue3 中的实现对比或异同
vue.js
能源革命1 小时前
Three.js、Unity、Cesium对比分析
开发语言·javascript·unity
We་ct1 小时前
LeetCode 28. 找出字符串中第一个匹配项的下标:两种实现与深度解析
前端·算法·leetcode·typescript
xzl041 小时前
小智服务端chat入口工具调用流程
java·服务器·前端