单页应用什么框架好。。。
国内貌似就三个框架,国外貌似很多。
先是选择vue,因为国内宣传很多位,又是国产中文嘛,所以第一个就选了vue来学。
但是发觉VUE没有宣传的那么简单易学。
然后听说国外都是React的天下,我就去学React了,然后发觉React真的好难,准确来说Redux好难,太难了。。不过我还是学会了,也做了几个常见的功能页面,但是发觉开发体验很差,而且不断的有选择困难症,官方有Flux,社区推荐redux,然后又出了mobx。
最后我去学了angular2,之所以最后选择,可能是宣传不到位,比如笨重,很难上手,什么跳崖式升级。
但是我发觉官方的文档真是前所未见的全,各种例子都有,培训机构可以关门了。。没必要录教程了。。一步到位,也没有了选择困难症,之前看人家说一个项目react+redux+es6+webpack+react-router+redux-thumb+.....这种的真是很可怕。。但实际就是这么多技术。
对比了几种框架,我发觉NG2是最容易上手的。。。因为文档实在太强大,也没有选择困难症。
vue就搭建了个helloworld...但是文档是有看完的,完全不知道如何下手,都说组件化,但是vue官方文档是直接引入教语法的。。这样跟我的节奏不一样,就是冲着组件化,单页才来的啊。。
react完全是冲着这么难,硬着头皮学,vue跟ng2很像,但是react跟他们出入很大,这点我觉得react的做法比较好,在JS里面写HTML,而NG2是在HTML里面写JS...学习成本会高一点。除此之外,都是大同小异。
主要是单页应用的概念,比如webpack打包,配置选项执行选择对应的loader编译打包文件。
比如单页路由,子组件路由。
比如组件通讯,组件复用,看了react文档,是推荐无状态的视图组件,然后用一个容器来包括处理数据获取数据传递数据。
而ng2官网例子是单个组件各自获取数据,视图组件似乎没有复用的必要。组件结构也有讲究,每个组件全部分解,这样复用几率肯定高,但是整个项目就乱套了,树状的话,整个项目很好管理,但是复用就难了,NG2官网推荐Shared文件夹,主要以树状结构组织组件,能公用的直接放到Shared,这样似乎很好的解决了疑问。
单页应用都得面临这些问题,当然还有更多。。。。
vue说简单易用,怎么可能?单页组件化的思路就是这么多,这些概念是必须要理解,这些才是难点。。
至于那些语法,其实都不重要。