第一次知道 Vue.js 是在一个技术群里。按照我的习惯,凡是我没听说过的东西我都会谷歌一下。当时它还没有发布 1.0 正式版(我的另一习惯是只用稳定版),又发现它跟 AngularJS 差不多,所以只是给了颗 Star,然后就干别的去了。
最近因为开发划词翻译 v6.0 的关系,我准备在里面用到我熟悉的 AngularJS 来写一些交互很多的页面,可是想了一下,唯一需要交互的页面就是设置页,为此我要引入 AngularJS 这个“大胖子”,那“性价比”太低了。
随后我就想到了 Vue.js,现在(2015年11月11日)它已经有 9361 个 Star 了,距离我标星的时候(2015年6月26日)涨了近 4000 颗,同时也发布了 1.0 版。我想,是时候深入了解一下它了。
写这篇博文时我刚看完 Vue.js Guide。看完之后,我的感受就是:它真的很简单。想当初学习 AngularJS 的时候我还买了一本书(《AngularJS 权威指南》),看了一个星期才敢用在项目里,而看完 Vue.js 的 Guide 前后不超过一个小时,我就觉得我已经完全理解了它、立刻就能用在项目里了。
AngularJS 里那些让人眼花缭乱的概念(控制器、作用域、模块、指令等等),我到现在也不敢说完全理解了,用起来还是心有戚戚焉,怕随着项目一天天复杂起来,往后会碰到一些不知道的坑,要用各种 “hacks” 才能解决,让项目变得不利于维护;但 Vue.js 唯一需要睁大眼睛看的就是 Reactivity in Depth 这一节。
最后看完 Comparison with Other Frameworks 之后,我更加认同了 Vue.js 的设计理念。没有 AngularJS 的脏值检测,没有 React 的“虚拟 DOM”的奇怪概念(我最受不了的就是它要把 html 写在 js 里),我越来越喜欢它了!
现在我期待的就是 vue-router 能尽快发布稳定版,那我以后可能就不会用 AngularJS 了~