面试历程——vue1.0和2.0的区别和优点
时间:2019-08-17
本文章向大家介绍面试历程——vue1.0和2.0的区别和优点,主要包括面试历程——vue1.0和2.0的区别和优点使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
最近面试中有被问到说用的是vue
的那个版本,答曰vue2
,然后面试官继续问了vue2.0
与vue1.0
的区别,以及其具有哪些优点......最怕空气突然安静~~
好的,学习整理记录如下
一、组件模块中,需要有一个根元素包裹
vue1.0
中,组件可以支持片段式的代码,如:
<template>
<h1>标题标题</h1>
<section>我就是所谓文章了</section>
</template>
而在vue2.0
中,组件必须要有着一个根元素来包裹我们的代码,如:
<template>
<div>
<h1>标题标题</h1>
<section>我就是所谓文章了</section>
</div>
</template>
二、生命周期
vue1.0
的生命周期:
init // 初始化
created // 实例创建,dom未生成
beforeCompile // 编译之前
compiled // 编译完成
ready // 准备 mounted
beforeDestroy // 销毁前
destroyed // 销毁完成
vue2.0
的生命周期:
beforeCreate // 创建前 -> init
created // 实例创建后
beforeMount // 装载前 -> beforeMount
mounted // 装载后 -> ready
beforeUpdate // 组件更新前
updated // 组件更新后
beforeDestroy // 组件销毁前
destroyed // 组件销毁后
三、循环
vue1.0
是无法添加重复数据,vue2.0
是默认就支持的。
vue1.0
需要添加重复数据时,需要添加track-by="$index"
,这与vue2.0
中的:key="index"
类似。vue2.0
去掉了其中$index和$key,直接换成循环定义。
四、过滤器
vue1.0
中自带过滤器json、 currency
等,vue2.0
将其全部删除,让开发者自定义需要的过滤器,如下:
// 局部
filters: {
capitalize: function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
}
}
// 全局
Vue.filter('capitalize', function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
})
五、prop
vue1.0
中prop是支持双向数据传递的,vue2.0
只允许父向子单向传递(子向父传递值用emit)
vue1.0
中,对prop数据进行检查修改使用coerce,vue2.0
改成使用computed,如下:
// vue1.0
prop: {
price: {
type: String,
coerce: function(val){
return '$' + val
}
}
}
// vue2.0
prop: {
price: String
},
computed: {
newPrice () {
return '$' + this.price
}
}
六、实例方法
vue2.0
还删除了一些实例化方法,如下:
vm.$appendTo
vm.$before
vm.$after
vm.$remove
vm.$eval
vm.$interpolate
vm.$log
暂时看了这么多,确实对1.0的版本没什么了解。而且,个人觉得看vue3.0
的新特性更重要吧
原文地址:https://www.cnblogs.com/hplwc/p/11370654.html
- Hadoop学习笔记
- 利用硬链接和truncate降低drop table对线上环境的影响
- 手把手教你实现GAN半监督学习
- 【超全】C语言小白最容易犯的17种错误,你中了几个?
- Oracle 12.2新特性掌上手册 - 第五卷 RAC and Grid
- ResNet, AlexNet, VGG, Inception: 理解各种各样的CNN架构
- 机器学习实战---线性回归提高篇之乐高玩具套件二手价预测
- 【Oracle12.2新特性掌上手册】-第八卷 PDB的快速创建与移除
- 《机器学习实战》学习笔记(十一):线性回归基础篇之预测鲍鱼年龄
- 你必须要知道CNN模型:ResNet
- CNN模型之SqueezeNet
- YOLO算法的原理与实现
- Batchnorm原理详解
- 【动手实践】Oracle 12.2 新特性:自动的列表分区创建
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- JointPoint用法及与ProceedingJoinPoint 的关系
- Spring中的异步请求、异步调用及demo测试
- 以太坊交易签名解析源码解读
- 比较NaN和数字
- GO 的方法集
- 轻松应对并发问题,简易的火车票售票系统,第一步 —业务分析
- 【Spark Operator】核数设置Cores/Cores Limit/Cores Request,你搞清楚没有?
- 【Ceph RGW】radosgw_usage_exporter监控用户使用量
- 【Goland】#{key}=#{value},字符串被格式化了?
- Variable变量
- 案例:OGG目标端进程ABENDED处理
- Elasticsearch深分页以及排序查询问题
- 聊聊dubbo-go的HystrixFilter
- 如何将Java工程导出成可以执行的jar
- 利用JSP内置的Application对象实现的网站引用计数