前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vuejs --02 Vue实例

Vuejs --02 Vue实例

作者头像
用户1148399
发布2018-01-09 15:50:48
6450
发布2018-01-09 15:50:48
举报
文章被收录于专栏:web前端web前端

一、构造器

     1、vm(view model 表示Vue实例),每个Vuejs都是通过构造函数Vue创建Vue的根实例启动

代码语言:javascript
复制
var vm = new Vue({
     //传入一个选项对象{},可以包含数据data(object|function)、模板templete(会完全替代挂载元素,包含挂载元素本身)、方法methods、挂载元素el ( CSS选择器或HTMLElement实例 )、生命周期钩子等
     //选项
});

     2、扩展Vue构造器,从而用预定义的选项创建可复用的组件构造器     (注意:Vue.js 组件都是被扩展的Vue实例)

代码语言:javascript
复制
var MyComponent = Vue.extend({
     //扩展选项
})var myComponentInstance = new MyComponent();
     //尽管可以命令式地创建扩展实例,不过在多数情况下建议将组件构造器注册为一个自定义元素,然后声明式地用在模板中。

二、属性与方法

     1、每个Vue实例都代理data对象      注意只有这些被代理的属性是响应的,也就是说值的任何改变都是触发视图的重新渲染。如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。

代码语言:javascript
复制
var data = { a: 1 }
var vm = new Vue({
     data: data
})
vm.a === data.a // -> true
// 设置属性也会影响到原始数据
vm.a = 2
data.a // -> 2
// ... 反之亦然
data.a = 3
vm.a // -> 3

     2、 除了 data 属性, Vue 实例暴露了一些有用的实例属性与方法。这些属性与方法都有前缀 $,以便与代理的 data 属性区分。

代码语言:javascript
复制
var data = { a: 1 }
var vm = new Vue({
     el: '#example',
     data: data
})
vm.$data === data // -> true
vm.$el === document.getElementById('example') // -> true
// $watch 是一个实例方法
vm.$watch('a', function (newVal, oldVal) {
// 这个回调将在 `vm.a` 改变后调用
})

三、实例生命周期

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档