1.应用场景
近年来前端框架的发展如火如荼,新概念、新框架 如雨后春笋搬迅速的“破土而出”。其中最火的就是MVVM模式的框架,其代表实现就有Angular.js、React.js以及我们将要使用的Vue.js。
为什么要用Vue那?
- 渐进式的学习曲线,学一部分就可以用一部分;
- 体积小巧、试用简单;
- 可以更好的在移动端运行;
- 屏蔽显式的对DOM的操作(如:JQuery);
- 组件化开发,可以最大程度的降低冗余代码;
一般情况下,都是完全的前后端分离,项目由专门的前端开发工程师来进行开发。前端只管界面和交互,后端只管向前端输出数据。但是在有些中小型的公司或者部门,前端开发工程师的资源非常有限,一些内部或者规模不是很大的系统,如:OA办公、中后台管理系统等,往往是由服务端的开发工程师来实现前端的功能的。
服务端开发工程师往往对前端开发的技能只是初步掌握,做出来的界面生硬、交互繁琐。为了解决这些问题,就需要一个组件化、可以通过简单的引用、组合来完成前端的功能实现,不需要精通js、css、html等前端的繁琐的技术细节,就可以构建出来简洁、美观、交互顺畅页面的前端框架;经过对一些比较流行的前端框架的对比和实验,我选择了Vue.js,而且我个人觉得像Vue.js这样的MVVM框架必然会成为将来前端开发框架的霸主。
本文将带您一步步,构建出基于Vue.js 的基本的集前后端与一体的开发环境。
2.环境涉及到的技术或框架
服务端:
Spring Boot 2
前端:
Vue.js
iview ui
axios
操作系统:
Mac OS
IDE:
IntelliJ IDEA
为了使项目简单便于理解,服务端直接采用最小化配置的Spring Boot来进行构建。本文重点是讲述如何将Vue.js集成到我们常规的服务端项目中,因此服务端的构建我们后边会一带而过,有需要详细了解的可以查看相关资料;
关于iview ui,因为Vue.js作为前端MVVM开发框架,本身不提供UI组件,但是在实际的开发中我们肯定是需要一套功能全面、风格清新的UI组件的。经过对目前市场主流(Element UI、iview UI、at-ui 等)的Vue.js UI组件库的试用和对比,最终选了iview ui, 其主要有以下特点:
- 高质量、功能丰富
- 友好的API,自由灵活第试用空间
- 事无巨细的文档
- 细致、漂亮的UI
- 可自定义主题
- 活跃的开源社区
另外,市场上也有一些非常优秀的Vue.js移动端的UI组件库,基于本文的使用场景,没有将其纳入到考察的范围内。
前后端数据交互我们采用axios,iview ui 推荐的也是这个,当然你也可以用Vue官方的vue-resource。
操作系统和IDE对本文的影响不大,不同的操作系统、IDE大同小异。