vue考察点

为何推荐使用axios?

因为vuejs2.0以上特别推出SSR,这个是要在服务端适应node.js作服务端渲染的,所以存在在浏览器端和服务器端同时使用http请求的需求,而axios正好知足这个需求前端

如何解决v-if/v-show还未彻底编译时其{{message}}内容会闪现的问题?

使用v-cloakvue

v-if和v-for共存时,哪一个优先级高?

v-for的优先级要高于v-if,也就是说先作v-for的loop,随后对每个loop再应用v-if判断node

如何给webpack构建出来的bundle瘦身?

Webpack是一个开源的前端模块构建工具,它提供了强大的loader API来定义对不一样文件格式的预处理逻辑,这是.vue后缀单文件组件形式的基础。因此在此基础上,尤大开发的vue-loader容许将模板、样式、逻辑三要素整合在同一个文件中,以.vue文件后缀造成单文件组件格式,方便项目架构和开发引用。webpack

使用source-map-explorer 或者 webpack-bundle-analyzer 对build出来的sourcemap作分析,可视化的列出bundle最终是由哪些js文件组成,而后本身去分析ios

vuejs2.0的核心思想

核心思想是:web

数据驱动,axios

Vue.js数据观测原理在技术实现上,利用的是ES5 Object.defineProperty和存储器属性: getter和setter(因此只兼容IE9及以上版本),可称为基于依赖收集的观测机制。浏览器

原理:服务器

1 将原生的数据改形成 “可观察对象”,一般为,调用defineProperty改变data对象中数据为存储器属性。一个可观察对象能够被取值getter,也能够被赋值setter。架构

2 在解析模板,也就是在watcher的求值过程当中,每个被取值的可观察对象都会将当前的watcher注册为本身的一个订阅者,并成为当前watcher的一个依赖。

3 当一个被依赖的可观察对象被赋值时,它会通知notify全部订阅本身的watcher从新求值,并触发相应的更新,即watcher对象中关联的DOM改变渲染。

组件系统,

1 模板(template):模板声明了数据和最终展示给用户的DOM之间的映射关系。

2 初始数据(data):一个组件的初始数据状态。对于可复用的组件来讲,这一般是私有的状态。

3 接受的外部参数(props):组件之间经过参数来进行数据的传递和共享。

4 方法(methods):对数据的改动操做通常都在组件的方法内进行。

5 生命周期钩子函数(lifecycle hooks):一个组件会触发多个生命周期钩子函数,最新2.0版本对于生命周期函数名称改动很大。

6 私有资源(assets):Vue.js当中将用户自定义的指令、过滤器、组件等统称为资源。一个组件能够声明本身的私有资源。私有资源只有该组件和它的子组件能够调用。

7.动画系统:当一个元素的可见性变化时,用户不只能够很简单地定义对应的CSS Transition或Animation效果,还能够利用丰富的JavaScript钩子函数进行更底层的动画处理。

8.可扩展性:除了自定义指令、过滤器和组件,Vue.js还提供了灵活的mixin机制,让用户能够在多个组件中复用共同的特性。

相关文章
相关标签/搜索