了解Vue

1. 什么是vue实例?

        vue实例,类似于创建一个对象,里面包含生命周期钩子函数、data、methods方法、计算属性等等;

        钩子函数用来描述Vue实例从创建到销毁的整个生命周期。
        beforecreate:创建实例对象之前;
        created:创建实例对象之后;
        beforeMount:页面挂载成功之前
        Mounted:页面挂载成功之后
        beforeUpdated:组件更新之前执行
        updated:更新之后执行
        beforeDestroy:实例销毁之前执行
        destroy:实例销毁之后执行

2. new Vue()的时候做了什么?

        创建vue实例,进行实例初始化。内部执行了一个_init私有函数,做了一堆初始化工作,比如initMixin(Vue)里initState(vm),这个函数里初始化了initData\initMethods\initProps等等。对data的处理就是将data中的属性的key遍历绑定至实例vm上,通过Object.defineProperty进行拦截,将真实的数据操作都转发到this.data上。

3. Vue.use()是干嘛的?

        ~Vue.use本身是一个函数;

        ~主要做了以下操作:

                ① 判断插件是否注册;

                ② 如果插件自带install属性,执行它,同时传递一个Vue构造函数作为第一个参数,以及use中的其他参数

                ③ 如果插件本身是函数,执行它,同时传递一个Vue构造函数作为第一个参数,以及use中的其他参数

        ~大部分插件本身都是一个对象,然后install中都会拿到传递来的Vue构造函数进行一些绑定操作。比如绑定组件,比如在原型上添加方法等。

4. 为什么有的库不需要使用Vue.use()

        比如常见的axios引入:

import axios from "axios";
Vue.prototype.$axios = axios;

        axios本身是不依赖Vue去运行的,axios本身就可以在浏览器端或者node端都能进行http请求。这里挂载到Vue原型的$axios属性上,只是为了方便使用。

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值