VUE学习笔记--结束

93 阅读4分钟

学习来源:edu.51cto.com/center/cour…

学习这个需要前端基础,如HTML\JS

建议直接取看视频,非常详细,可以开2倍速度看。

模板语法:

说白了就是数据绑定的方式,{{}}、v-bind:或:

1.数据绑定

再html里直接用{{}}方式绑定。

注意:类似以上的htmlStr绑定为例,如果你不用这种方式,你用<div v-html>这样的方式会出现很大的问题,安全性不高,容易被攻击。

2.模板表达式

表达式要在一个用例作用域下,比如上文的el:app,如果不是app里的就不能用。

单一的一个表达式的意思:如果你这么写:{{var a=100;arr.join(.)}}这样不会解析

这个理解也简单,就是绑定数据的基础上进行一些算法+-*/之类的。

3.模板属性

就是v-bindb:来绑定数据,或者直接:来绑定(:href=“url”)

指令

1.概念

这样的类型有很多,v-for v-if v-show v-bind等,后面都会学到。例如

绑定时可以带方法,比如一个点击事件

2.指令参数与修饰符

<div v-bind:title="url">其中url是属性

这个abc就是变为了动态参数,它可以再data定义,也可以再计算属性中生成

点击事件,这个event.preventDefault()这个就取消点击事件

3.指令缩写

基础指令1

1.v-show

flag:true就显示,或者flag:10>6,这个也位true,flag:3>6就是false

2.v-if

v-show和v-if有本质的区别:v-show是display的切换(它虽然没有显示出来,但是还是会渲染,你看控制台会有<div>之类的显示),v-if是有条件的渲染上去(它是会销毁和渲染),条件就是你绑定的data决定的,数据驱动视图的变化。

如果showFlag为true就显示if,如果为false就显示else

如果是true显示v-if,为false显示v-else-if,就没有走到v-else

 这个v-if尽量少用。

3.v-for

3.1 循环数组

             

 例子:

第一步:就是item in arr

第二步:绑定arr

  再看例子

 注意:item不是一定的,类似以前的for循环,item相当于arr[i] 的简洁形式,你可以写abc或其他的,可以自己定义。

还有其他写法

 结果跟上面一样,index可以,你用i也可以,建议用index,习惯了。

 

 建议都用in 习惯问题。

3.2 循环对象

当我们定义obj的时候

 这是为什么?实际上它跟数组有很大区别,再数组每个item表示当前数组的元素,对象就是直接把value渲染出来了。

直接把对于

 

 

 

 所以index表示所在下标,key表示属性名称,value表示属性内容

 

 

 key不能重复,就类似编号。

 

 基础结构步一样,就可以直接写出来,一样就考虑用for

 

 key配合vue。

计算属性与方法

对象是空的,为什么

要加return 

 

 当

 formaStr是计算过后的返回,重新排序,1112223334556666

 

get的用法

 

出来的结果为400

 set的用法

 这个结果还是为400,set要动态执行

 结果就等于1400了

 以下这种写法是写死的,不是动态计算属性,虽然结果出来也是对的,但是这会是什么后果?无法从data数据中来驱动,这就步符合vue的特性。

 

方法

这个比较简单,跟js一样,没啥好讲的。

 es6可以把function这个省略,直接fan2(){}即可

外部方法(Vue外)和调用。写法如下

 

 如果是方法记得加()

计算属性和方法的区别

计算属性定义一次,都是从缓存里拿数据。方法就是每次都是执行方法。

执行的函数越多,性能受影响。所以建议点击事件绑定函数这些使用函数,需要提前计算获取才用计算属性

计算属性本身不是函数,不能加括号,你非要变为函数,可以这么写,否则会报错。

------------不在更新,太烦了-----------------自己看视频