vue实例对象介绍

 

转载于:https://www.cnblogs.com/CaseyWei/p/9315144.html

Vue 实例对象的创建是通过 `new Vue()` 来实现的,它是构建 Vue 应用的核心基础。在创建实例时,开发者需要传入一个选项对象,该对象包含多个配置项以定义实例的行为和数据。 ### 创建 Vue 实例 创建 Vue 实例的基本语法如下: ```javascript var vm = new Vue({ // 选项对象 }); ``` 其中,选项对象可以包含多种属性来配置实例,例如 `el`、`data`、`methods`、`computed` 等。 #### 挂载点 (`el`) `el` 属性用于Vue 实例所要挂载的 DOM 元素。它接受一个 CSS 选择器字符串或实际的 DOM 元素作为值。当 Vue 实例被创建后,它会接管这个元素,并将其作为应用的根节点。 ```javascript let vm = new Vue({ el: "#app", data: { name: 'beiyu' } }); ``` 在这个例子中,`#app` 是一个 HTML 元素的 ID,表示 Vue 实例将在此元素上进行渲染[^3]。 #### 数据对象 (`data`) `data` 属性是一个对象,其中包含了所有你想要在视图中使用的响应式数据。这些数据一旦发生变化,视图也会相应更新。`data` 中的数据可以通过 `this` 关键字在 Vue 实例的方法中访问。 ```javascript let vm = new Vue({ el: "#app", data: { message: "Hello Vue!", flag: 0, date: new Date() } }); ``` 上述代码展示了如何定义 `data` 对象中的属性,如 `message`、`flag` 和 `date`。这些属性都是响应式的,并且可以在模板或其他 Vue 特性(比如计算属性、方法)中使用[^2]。 #### 方法 (`methods`) `methods` 属性允许你在 Vue 实例中定义方法,这些方法通常用来处理用户的交互操作,比如点击按钮等。这些方法可以直接在模板中通过令调用。 ```javascript let vm = new Vue({ el: "#app", methods: { incrementCounter: function () { this.counter++; } }, data: { counter: 0 } }); ``` 这里定义了一个名为 `incrementCounter` 的方法,它会在被调用时增加 `counter` 的值,而 `counter` 是在 `data` 中定义的一个属性[^1]。 #### 计算属性 (`computed`) 计算属性提供了更复杂的数据逻辑处理能力。与 `methods` 不同的是,计算属性基于它们的依赖进行缓存。只有当它的依赖发生改变时才会重新求值。 ```javascript let vm = new Vue({ el: "#app", data: { firstName: 'John', lastName: 'Doe' }, computed: { fullName: function () { return this.firstName + ' ' + this.lastName; } } }); ``` 在这个示例中,`fullName` 是一个计算属性,它返回由 `firstName` 和 `lastName` 组合而成的名字。如果这两个属性中的任何一个发生变化,`fullName` 将会自动更新[^4]。 #### 监听属性 (`watch`) 监听属性允许我们执行异步操作或者当数据变化时做一些复杂的处理。它可以监听数据的变化并作出反应。 ```javascript let vm = new Vue({ el: "#app", data: { flag: 0, date: new Date() }, watch: { flag: function (newVal, oldVal) { alert("新值:" + newVal + " 旧值:" + oldVal); } } }); ``` 此段代码演示了如何设置一个监听器来监视 `flag` 的变化,并在变化时弹出提示框显示新的和旧的值[^4]。 #### 生命周期钩子函数 生命周期钩子函数是一系列在 Vue 实例不同阶段自动调用的函数。最常用的有 `created` 和 `mounted` 等。 ```javascript let vm = new Vue({ el: "#app", data: { message: "Hello Vue!" }, created: function () { console.log('实例已创建'); }, mounted: function () { console.log('实例已挂载'); } }); ``` `created` 钩子会在实例创建完成后立即调用,此时数据观测 (data observer) 和事件/侦听器的配置已经完成;而 `mounted` 则是在实例被挂载到 DOM 上之后调用[^5]。 以上就是关于 Vue 实例对象创建方法及使用的详解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值