当前位置: 首页 > Web前端 > vue.js

白话框架

时间:2023-03-31 21:13:56 vue.js

如果你只会用Vue或者React,那么这篇文章适合你。本文不深入探讨原理,只是比较基本功能的使用。首先看下面的数据,百度搜索指数。很明显,Vue的搜索指数明显高于React和Angular。向简单的学习是可以的。你认为技术路径是什么?其实你是这样想的。除了Vue,你还有什么?写这篇文章的目的是让大家了解框架的使用方法和技巧。下面截取了react和vue的官方文档目录。常用的基本功能包括至少9个数据绑定模板条件列表。至于细节,如何在不手动操作DOM的情况下实现以上七个功能呢?三大框架都采用了MVVM的思想,其优势在于摆脱了手动操作DOM和获取节点数据带来的低效。往下看,MVVMMVVM旨在利用数据绑定功能,通过ViewModal自动更新DOM的状态,然后从view层去掉几乎所有的GUI代码。既然大家都是被VM的思想启发了,基本功能也大致差不多,下面就来一一比较Vue和React的基本功能Databindingvue双向绑定,react单向绑定,代码对比//vue//这个对象被添加到一个Vue实例中varvm=newVue({data:{a:1},created:function(){this.a=2;},});//reactvardata={a:1};classHelloWorldextendsReact.Component{constructor(props){super(props);this.state={a:1};}componentDidMount(){//必须由方法this.setState({a:2,})触发;}render(){return(

Hello,world!

);}}ReactDOM.render(,document.getElementById("root"));模板表达式JSX使用{},vue使用{{}},代码比较//vue//反应
{name}{name+'abc'}{`${name}abc`}{isShow?'abc':'efg'}{()=>{return'abc'})}
指令vue指令v-if,v-else-if,v-else,v-show,v-modalreact没有说明的代码比较//vue//反应
{isA?

我是A

:是B吗?

我是B

:

我是C

}大魔王来了

()=>{this.setState({inputText:val})}value={this.state.inputText}/>
    {list.map((item,i)=>{item.text)}
有没有发现react中expressions的香味?自定义参数传递给子组件。常见的绑定包括:属性绑定,class,样式代码对比//vue//仔细看文档明白什么意思,active就是class,isActive就是判断条件,
//反应详情,香的表达形式绑定vue与v-modal,与onChange反应,代码对比//vue第一行代码其实只是第二行的语法糖。input元素本身有一个oninput事件,是HTML5新增的,类似于onchange,每当input框的内容发生变化时,都会触发oninput。//reactthis.setState({userName:$event.target.value}))}>事件处理vue通过v-on:*,通过on*进行反应,代码对比//vueGreetvarexample=newVue({el:"#example",data:{name:"Vue.js",},//在`methods`对象中定义方法methods:{greet:function(event){//`this`指向方法中的当前Vue实例alert("Hello"+this.name+"!");//`event`是原生DOM事件if(event){alert(event.target.tagName);}},},});//reactclass示例扩展组件{constructor(props){super(props);this.state={name:"React.js"};}greet(event){//`this`指向方法中的当前Vue实例alert("Hello"+this.state.name+"!");//`event`是原生DOM事件if(event){alert(event.target.tagName);}}render(){Greet}}生命周期生命周期的存在也是为了在合适的时间执行各自的操作。除了使用虚拟DOM机制外,还需要把握好组件挂载的时机。生命周期钩子是非常必要的。无论是vue还是react,生命周期都会经历以下几个阶段:初始化阶段、运行阶段、销毁阶段、vuereact(v16.3版本之前,之后的版本生命周期有所调整)。组件复用的效率不言而喻。组件设计和组件划分也是一门学问。vue组件的引入有很多技巧。React组件总结通过对比两个框架的基本功能,不难发现实现思路大同小异,但在细节上各有各的考量。其中,Vue自定义了很多api,而reactexpresses风格玩了个新花样,跳出了框架本身,相信你会对前端框架有更透彻的了解。