📜  vue 实例 (1)

📅  最后修改于: 2023-12-03 14:48:23.073000             🧑  作者: Mango

Vue 实例

Vue实例是Vue.js最核心的概念之一,它是Vue的一个对象实例,负责连接视图与数据模型,将实例绑定到一个HTML元素上,并管理相关联的数据和方法。

创建 Vue 实例

要创建Vue实例,需要使用Vue构造函数。下面是一个例子:

var vm = new Vue({
  // 选项
})

在这里,vm是一个Vue实例。既然Vue实例连接视图与数据模型,那么vm实际上就是把Vue实例绑定到一个HTML元素上。

Vue实例的选项可以包括数据、模板、挂载元素、方法、生命周期钩子等。可以参考下面的例子:

var vm = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  },
  methods: {
    reverseMessage: function() {
      this.message = this.message.split('').reverse().join('')
    }
  }
})

在这里,我们创建了一个Vue实例vm,并将其挂载到id为app的元素上。数据message表示“Hello Vue!”,方法reverseMessagemessage逆序。

实例选项

Vue实例的选项可以包括:

  • el:指定Vue实例挂载到的DOM元素上,可以是CSS选择器、DOM元素或函数。如果使用函数,则它应该返回一个DOM元素。例如:el: '#app'
  • data:Vue实例的数据对象,用于响应式地更新视图。例如:data: { message: 'Hello Vue!' }
  • computed:计算属性,用于根据其它数据属性的值计算得出的值。例如:computed: { reversedMessage: function() { return this.message.split('').reverse().join('') } }
  • methods:Vue实例中使用的方法。例如:methods: { reverseMessage: function() { this.message = this.message.split('').reverse().join('') } }
  • watch:当数据属性变化时执行代码的函数。例如:watch: { message: function(newValue, oldValue) { console.log('new message: %s, old message: %s', newValue, oldValue) } }
  • beforeCreate:Vue实例创建之前执行的函数。
  • created:Vue实例创建完成后执行的函数,它可以访问数据、计算属性、方法等。
  • beforeMount:Vue实例挂载到DOM元素之前执行的函数。
  • mounted:Vue实例挂载到DOM元素之后执行的函数,它可以访问DOM元素、组件等。
  • beforeUpdate:Vue实例被data更新之前执行的函数。
  • updated:Vue实例被data更新之后执行的函数。
  • beforeDestroy:Vue实例销毁之前执行的函数。
  • destroyed:Vue实例销毁之后执行的函数。
指令

Vue实例具有许多内置指令,用于使数据与视图保持同步。下面是一些常用的指令:

  • v-if:根据表达式的值条件地渲染元素。
  • v-show:根据表达式的值条件地显示或隐藏元素。
  • v-for:迭代数组或对象的属性来渲染一个列表。
  • v-bind:绑定属性或使用JavaScript表达式。
  • v-on:在元素上绑定事件。
  • v-model:将表单元素的值与Vue实例的数据双向绑定。
  • v-pre:跳过编译这个元素及其子元素。
  • v-cloak:可以用来隐藏未编译的vue标签指令。
结语

Vue实例是Vue.js最核心的概念之一。它允许开发人员将数据和方法绑定到视图上,实现响应式的交互效果。Vue实例提供了一系列的选项和钩子,可以对其生命周期进行控制,并灵活运用内置的指令来实现各种功能。