现在的前端,各种框架各种语言层出不穷,其目的都是为了解决问题而出现的,在越来越发达的移动端上当然也少不了框架的应用了,其中用的最多也最出名的三大框架就是Angular,react 和vue了,vue算是后起之秀了,但是发展势头要高于前两者。很重要的原因是它具有如下特点: (1)简洁 (2) 轻量 (3)快速 (4) 数据驱动 (5) 组件化。
我没有使用过Angular和react,但是我看了下他们的文档,相比之下,我选择了vue,对于我这种小白来说,很适合,而且官方文档https://cn.vuejs.org/v2/guide/ 上说的很清楚,它是很容易上手的,对于有点前端知识的小白来说,使用它是不错的一个选择。
我们先来看看它的循环指令,你就会觉得它确实很简单也很方便。我们在渲染页面过程中碰到循环时一般都是采用字符串的拼接来解决的,如果循环列表的内容不是很多那还好,如果列表中有很多内容,并且内带有很多隐藏的信息,比如name啊,id啊等等时,我一般会使用data-来处理如:data-id,data-name
这时,拼接字符串就有点难受了,一不小心少点什么引号,加号的,那就不行了,特别的注意变量和字符之间的连接,如'<div class="items" data-id="'+xx变量+'">'
不能够直接写 '<div class="items" data-id='+xx变量+'>'
不然结果会有影响。而且拼完后,看着一长串,一长串的字符就感觉不太舒服,不够优雅。但是当我看到vue中的 v-for
指令时,我就感觉这个太好了,有种让我眼前一亮的感觉。简洁而强大,如
其渲染到页面的结果为
v-for
指令需要使用 item in items
形式的特殊语法,items 是源头,是数据数组并且 item 是数组元素迭代的别名,就是每个数组中的每一个元素。在 v-for
块中,我们拥有对父作用域属性的完全访问权限。 v-for
还支持一个可选的第二个参数为当前项的索引。如
其渲染到页面的结果为
还有v-bind
指令指绑定某一个dom的属性值,当其属性值改变时,则其dom元素中的属性值也会随之改变,如<p v-bind:name="changeName">
如果在 var app = new Vue({ el: '#app', data: { changeName:"gsben"}})
的data中改变changeName的值,则p标签name的值会马上改变,这就是vue的亮点,永远是数据驱动视图,结构非常清晰。还有v-on,v-if,v-show等等指令,其语法简单,通俗易懂,还有简明的语法糖。
指令 (Directives) 是带有 v- 前缀的特殊属性。指令属性的值预期是单个 JavaScript 表达式。指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM。
这些简单而强大的指令可以很愉快,并且很优雅的解决我们的页面渲染问题,让我们将更多的时间专注于业务逻辑上。看花容易绣花难,做几个dome是没问题的,但是要我们熟练的,灵活的运用这些指令在各个业务场合中,平常还是得多练,练的越多,对其的理解就越深。
当然,vue还远远不止这些,更精彩的还在后面。。。