2021年11月

目前, 个人了解的前端比较流行的框架是三个:

    BootStrap, React, Vue

想要为公司选一个作为接下来的前端技术研发方向, 因此作了一番调查, 有点浅见.

BootStrap:

    特点是栅格系统, 使用简单, 上手容易.  专为响应式页面而生. 一套代码就可以自适应平板电脑和PC.

    缺点在于, 缺少一套有力的成体系的组件(当时调查的时候还没有, 现在据说有了), 我在实际使用时, 发生了作用域冲突的问题,  如果没有整理好一整套组件, 开发很累.

React:

  特点主要有2个:

        1. 数据的单向响应.当数据发生变化的时候, React将会自动的管理UI界面更新

              2.  VisualDom(虚拟Dom). 由React来管理Dom树的变化, 开发者只需使用React的虚拟Dom进行开发, 页面的呈现会更快.

                    这个引申出了一个更大的优点:  虚拟Dom到真实Dom的映射, 是由React来控制的. 那么如果虚拟Dom映射为IOS或者Android呢? 于是React Native诞生了, 约80%的Reactive Native代码是可以同时支持IOS和Android的.

    缺点在于, 最近React的GPL协议有变动, 容易引起商业问题...

Vue:

    特点在于, 站在了React的肩膀上, 许多方面更出色了:

        1. 数据的双向绑定. 数据改, 页面改. 页面改, 数据也改.

        2. 页面的呈现据说比React还快.

        3. 组件化(实际上React也有组件化). 这和BootStrap这种组件化的概念还有点不同, Vue的组件化, 已经把作用域冲突的问题给搞定了.另外, js测试也变得更专业化了(有点类似junit).

        4. 单html开发. 它的开发模式, 是一个html, 然后不停替换组件对应的js来切换显示效果. html中的共通js和css只需要download一次, 理论上比Iframe页面的呈现更快.

        5. 结合node.js提供的webpack等, 可以进行成体系的打包发布.

    缺点在于, 上手难度比较高, 并且大规模开发的化, 需要有体系化开发的积累. Vue的组件化开发推荐使用Element: http://element.eleme.io/#/zh-CN/component/popover

结论:

    长远考虑的话, 建议使用Vue+node.js. 短期内使用的话, BootStrap是个不错的选择

参考资料:

Vue官方API文档:https://cn.vuejs.org/v2/api/

友情链接:https://www.jikedaquan.com/

28人点赞
日记本

作者:Program_黑
链接:https://www.jianshu.com/p/c05b48778231
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

工作后接触了React、Vue、AngularJS、Bootstrap、EasyUI 、AntDesign、Element,项目中使用过的只有Vue、Bootstrap、EasyUI 、Element,当时都认为是不同的前端框架。其实还是有区别的。

  框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,框架的关键还在于框架内对象间的交互模式和控制流模式。应用框架强调的是软件的设计重用性和系统的可扩充性,以缩短大型应用软件系统的开发周期,提高开发质量。简单说就是使用别人搭好的舞台,你来做表演。

  所以从框架意义上来说,React、Vue、AngularJS、Bootstrap、EasyUI 、AntDesign、Element都属于框架,但是他们的侧重点不同,React、Vue、AngularJS不仅仅提供全套UI组件还有 一些数据驱动功能;而Bootstrap、EasyUI 提供一些基本的ui控件封装,只是布局,属于UI层面。AntDesign、Element是针对于React、Vue、AngularJS等开发的组件库。  

  根据以上理解,为了便于以后区分那么多的前端技术,我将React、Vue、AngularJS、Bootstrap、EasyUI 、AntDesign、Element做以下分类:

  1、前端框架:React、Vue、AngularJS,重点在代码结构,数据控制方面
  2、UI框架:Bootstrap、EasyUI,重点在布局和排版方面
  3、组件库:AntDesign、Element可以在前端项目中引入,丰富页面,减少自己写控件的工作量。
  以上仅仅是为了解决自己混淆,纠结,做了个梳理,实际情况不一定对。

原文链接:https://www.cnblogs.com/qtiger/p/13202444.html

React:它最大优势在于它们相对简单和专注。做一件事情并把它做好是非常困难的,但这个库很有效地完成了它的目标。虽然对于某些状态容器方法可能是外部的,但大多数开发人员还是可以轻松掌握概念,并了解单向数据体系结构的好处,简化大量的用户界面应用程序

Angular:对于用户来说它有一套用于构建用户界面的丰富组件,这也是本系列中少有的几个框架能够做到这点。

Vue:渐进式构建能力是vue.js最大的优势,vue有一个简洁而且合理的架构,使得它易于理解和构建。

vue有一个强大的充满激情人群的社区,这为vue.js增加了巨大的价值,使得为一个空白项目创建一个综合的解决方案变得十分容易。

Bootstrap
Adminlte
项目:https://github.com/almasaeed2010/AdminLTE

演示:https://adminlte.io/themes/AdminLTE/index2.html

SB Admin
项目:https://github.com/BlackrockDigital/startbootstrap-sb-admin

演示:https://blackrockdigital.github.io/startbootstrap-sb-admin/

Gentelella Admin
项目:https://github.com/puikinsh/gentelella

演示:https://colorlib.com/polygon/gentelella/index.html

Vali Admin
项目:https://github.com/pratikborsadiya/vali-admin

演示:http://pratikborsadiya.in/vali-admin/

ModularAdmin
项目:https://github.com/modularcode/modular-admin-html

演示:https://gurayyarar.github.io/AdminBSBMaterialDesign/index.html

Metis
项目:https://github.com/puikinsh/Bootstrap-Admin-Template

演示:https://colorlib.com/polygon/metis/

Ace
项目:https://github.com/bopoda/ace

演示:http://ace.jeka.by/

Light Bootstrap Dashboard
项目:https://github.com/creativetimofficial/light-bootstrap-dashboard

演示:http://demos.creative-tim.com/light-bootstrap-dashboard

Material Dashboard
项目:https://github.com/creativetimofficial/material-dashboard

演示:http://demos.creative-tim.com/material-dashboard/examples/dashboard.html

Clearmin
项目:https://github.com/paomedia/clearmin

演示:http://cm.paomedia.com/

Vue
Element Admin
项目:https://github.com/PanJiaChen/vue-element-admin

演示:https://panjiachen.github.io/vue-element-admin/

Vue-Bulma
项目:https://github.com/vue-bulma/vue-admin

演示:https://admin.vuebulma.com/

Iview-Admin
项目:https://github.com/iview/iview-admin

演示:https://admin.iviewui.com

Vuestic-Admin
项目:https://github.com/epicmaxco/vuestic-admin

演示:https://vuestic.epicmax.co/

D2-Admin
项目:https://github.com/d2-projects/d2-admin

演示:https://fairyever.gitee.io/d2-admin-preview

Vue-Material-Admin
项目:https://github.com/tookit/vue-material-admin

演示:http://vma.isocked.com/

Angularjs
Rdash-Angular
项目:https://github.com/rdash/rdash-angular

演示:http://rdash.github.io/

Ng-Admin
项目:https://github.com/marmelab/ng-admin

演示:https://marmelab.com/ng-admin-demo/index.html

Angular
Ngx-Admin
项目:https://github.com/akveo/ngx-admin

演示:http://akveo.com/ngx-admin/

Ng-Alain
项目:https://github.com/cipchk/ng-alain

演示:https://cipchk.github.io/ng-alain/

SB-Admin-BS4-Angular6
项目:https://github.com/start-angular/SB-Admin-BS4-Angular-6

Angular-Material
项目:https://github.com/flatlogic/angular-material-dashboard

演示:http://flatlogic.github.io/angular-material-dashboard/

React
React-Admin
项目:https://github.com/marmelab/react-admin

演示:https://marmelab.com/react-admin-demo

Ant-Design-Pro
项目:https://github.com/ant-design/ant-design-pro

演示:https://preview.pro.ant.design/

SB-Admin-React
项目:https://github.com/start-react/sb-admin-react

React-Material-Admin
项目:https://github.com/rafaelhz/react-material-admin-template

演示:https://rafaelhz.github.io/react-material-admin-template

React-Webpack-Skeleton
项目:https://github.com/knledg/react-webpack-skeleton

演示:http://knledg.github.io/

Bear-Admin
项目:https://github.com/huzzbuzz/bear-admin

演示:http://huzzbuzz.coding.me/bear-admin

React-Director-Admin
项目:https://github.com/MacKentoch/react-director-admin-template

演示:http://mackentoch.github.io/react-director-admin-template

Admin-On-Rest
项目:https://github.com/marmelab/admin-on-rest-demo

演示:https://marmelab.com/admin-on-rest-demo/#/