Vue、React和Angular

渐进式代表的含义是:没有多做职责之外的事。

vue.js只提供了vue-cli生态中最核心的组件系统和双向数据绑定。

就好像 vuex、vue-router都属于围绕vue.js开发的库。

使用Angular,必须接受以下东西:

1、必须使用它的模块机制

2、必须使用它的依赖注入

3、必须使用它的特殊形式定义组件(这一点每个视图框架都有,这是难以避免的)

所以Angular是带有比较强的排它性的,如果你的应用不是从头开始,而是要不断考虑是否跟其他东西集成,这些主张会带来一些困扰。

使用React,你必须理解:

1、函数式编程的理念

2、需要知道它的副作用

3、什么是纯函数

4、如何隔离、避免副作用

5、它的侵入性看似没有Angular那么强,主要因为它是属于软性侵入的

Vue与React、Angular的不同是,但它是渐进的:

1、可以在原有的大系统的上面,把一两个组件改用它实现,就是当成jQuery来使用

2、可以整个用它全家桶开发,当Angular来使用

3、可以用它的视图,搭配你自己设计的整个下层使用

4、可以在底层数据逻辑的地方用OO和设计模式的那套理念

5、可以函数式,它只是个轻量视图而已,只做了最核心的东西

Vue几种常用的指令:

1、v-if:根据表达式的值的真假条件渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。

2、v-show:根据表达式之真假值,切换元素的 display CSS 属性。

3、v-for:循环指令,基于一个数组或者对象渲染一个列表,vue 2.0以上必须需配合 key值 使用。

4、v-bind:动态地绑定一个或多个特性,或一个组件 prop 到表达式。

5、v-on:用于监听指定元素的DOM事件,比如点击事件。绑定事件监听器。

6、v-model:实现表单输入和应用状态之间的双向绑定

7、v-pre:跳过这个元素和它的子元素的编译过程。可以用来显示原始 Mustache 标签。跳过大量没有指令的节点会加快编译。

8、v-once:只渲染元素和组件一次。随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过。这可以用于优化更新性能。

Vue常用的修饰符:

v-on 指令常用修饰符:

1、.stop -调用 event.stopPropagation(),禁止事件冒泡。

2、.prevent -调用 event.preventDefault(),阻止事件默认行为。

3、.capture -添加事件侦听器时使用 capture 模式。

4、.self -只当事件是从侦听器绑定的元素本身触发时才触发回调。

5、.{keyCode | keyAlias} -只当事件是从特定键触发时才触发回调。

6、.native -监听组件根元素的原生事件。

7、.once -只触发一次回调。

8、.left - (2.2.0)只当点击鼠标左键时触发。

9、.right - (2.2.0)只当点击鼠标右键时触发。

10、.middle - (2.2.0)只当点击鼠标中键时触发。

11、.passive - (2.3.0)以 { passive: true } 模式添加侦听器

(注意!)如果是在自己封装的组件或者是使用一些第三方的UI库时,会发现并不起效果,这时就需要用其他的了

.native修饰符了,如:

//使用示例:

<el-input

  v-model="inputName"

placeholder="搜索你的文件"

  @keyup.enter.native="searchFile(params)"

  >

</el-input>

v-bind指令常用修饰符:

1、.prop -被用于绑定 DOM 属性 (property)。(差别在哪里?)

2、.camel - (2.1.0+)将 kebab-case 特性名转换为 camelCase. (从 2.1.0 开始支持)

3、.sync (2.3.0+)语法糖,会扩展成一个更新父组件绑定值的 v-on 侦听器。

v-model指令常用修饰符:

1、.lazy -取代 input 监听 change 事件

2、.number -输入字符串转为数字

3、.trim -输入首尾空格过滤

而且v-on可以监听多个方法,例如:

<input type="text" :value="name" @input="onInput" @focus="onFocus" @blur="onBlur" />

但是同一种事件类型的方法,只会响应第一个,例如:

<a href="javascript:;" @click="methodsOne" @click="methodsTwo"></a>

只会响应methodsOne方法

posted @ 2021-06-30 09:09  瘋孑  阅读(226)  评论(0编辑  收藏  举报