一、实现思路

在实践中后台管理系统的前后端分离时,往往会因为业务量的增加使其前端项目难以维护,以及打包时间不理想,还有业务系统与框架之间区分不在明显。本文是本人从另一个角度提出的一种解决方案,希望各位提出宝贵的建议。

  1. 一个通用的框架项目
    此项目为框架项目,只负责提供基础方法,以及第三方依赖包的管理(因为一套系统第三方依赖包的版本应该统一的)、提供业务子系统的注册、布局的管理、导航管理等功能。
  2. 框架项目的cli,用于快速搭建业务子系统的开发平台
    首先以框架项目的生产版本为基础,制作一个模板项目;然后再创建一个cli项目,业务系统开发者安装cli项目,通过cli快速部署、更新框架内容。
  3. 一个全平台的css预处理解决方案
    此项目主要包含布局、各常用模块内容(如:登录、弹窗、文字处理等),现版本在业务系统中不允许修改css,只能引用css内容。
    注意:本基础框架是基于vue iview requirejs实现的

二、创建步骤

2.1、github上新建组织

此部分的操作可以参考github的相关操作手册完成。

2.2、基础框架与模板库

由于模板库是基于基础框架的,放在一起能更为有效的说明:

说明:

  1. .babelrc与.gitignore文件是没有做任务改变的复制
  2. gulpfile.js和package.json去掉了对sass编译部分的支持和方法
  3. 模板的skin文件夹是框架项目的skin和assets文件的合并,assets存放的sass内容,而skin存放的是第三方依赖的css内容。
  4. core文件夹由dest文件夹和app文件夹部分内容一起组成,dest存放的是通过rollup编译后的app.js和layout.js(框架系统),app存放的是index.html(入口html)、requirejs的main.js文件(js的入口和配置)
  5. lib和build是直接复制的 lib是第三方依赖库(此处是为了做到依赖库的统一管理),build中是存放的rollup编译配置文件,但有些许改动。

重点说明

  1. 框架项目中的examples文件夹,他是用于存放静态页面。我们在布局模块时应该先在此按钮设计图进行静态页面的实现。然后才是转换到正式项目,因为每个模块的样式都有被重用机会。
  2. 框架项目中的dest文件夹中app.js和layout.js的源码在src/master文件夹中。

2.3、制作cli代码库

此项目的目的其为简单,就是提供init和update方法,用于从模板项目生成业务子系统,并在模板项目更新后,提供更新命令将新的内容更新到业务子系统。

依赖的npm包:

chalk: 命令窗口文字有颜色的输出
commander:解析命令的输入
download-github-repo:下载github上面的模板项目
fs-extra:file和folder的处理,如删除
metalsmith:生成静态站点,选择他,是由于他的插件模式,用于后期对文件内容进行加工和处理

注意

  1. 发布的bin命令如何可用
    首先,需要在命令入口文件最上面添加如下代码(第一行):
#!/usr/bin/env node

然后,在package.json中的bin中添加命令与执行文件的关联

"bin": {
"vn-init": "srcCli/bin/init.js"
},

按照上述配置,npm全局安装成后,运行vn-init命令即可触发相关命令文件的代码。

三、项目地址

vueManager(框架项目):https://github.com/cqhaibin/vueManager.git
vueManager-cli(脚手架项目):https://github.com/cqhaibin/vueManager-cli.git
simple(模板项目):https://github.com/vueManager-template/simple.git
脚手架npm地址:https://www.npmjs.com/package/vuemanager-cli

欢迎下载测试和提出建议!!!

更多专业前端知识,请上 【猿2048】www.mk2048.com

中后端管理系统前后分离、前端框架的实现拙见相关推荐

  1. 跟我学Springboot开发后端管理系统6:缓存框架Caffeine

    Caffeine是一个基于Java8的高性能缓存框架,号称趋于完美.Caffeine受启发于Guava Cache的API,使用API和Guava是一致的.它借鉴了Guava Cache和Concur ...

  2. 从零开始搭建仿抖音短视频App-前后端开发模式,前端框架的选择、前端项目搭建

    目录 前后端开发模式 传统JavaWeb开发模式 前后端分离模式​编辑 前端框架的选择-UniApp介绍 内网互通原则 运行到iphone与Android 前后端开发模式 传统JavaWeb开发模式 ...

  3. Svelte-Ui-Admin基于svelte-ui中后台管理系统|Svelte3+Vite3后台框架

    Svelte Ui Admin基于svelte3.x+svelteKit+svelteUI整合的中后台管理系统. 一款基于svelte3.x+vite3+svelteKit+svelteUi+svel ...

  4. 后端视角下的前端框架之Vue.js初探

    背景 作为常年搞后端的自己来说,除了多年前学习的一点关于HTML的皮毛,对现在的前端技术栈可谓是一窍不通.但是因为最近在做的内部业务全链路监控系统,负责前端的同事做到一半去搞别的项目了,为了把项目落地 ...

  5. 适合后台管理系统开发的前端框架

    1.D2admin 开源地址:https://github.com/d2-projects/d2-admin 文档地址:https://d2.pub/zh/doc/d2-admin/ 效果预览:htt ...

  6. 14个适合后台管理系统开发的前端框架,建议收藏!

    前言:在职业发展道路上,需要不断提升自己,需要学习资源的,一起学习交流的欢迎加群[443128517],小编准备了学习视频,学习线路,自学书籍,职业发展视频.也可以加美女老师七七的微信.二维码放在下面 ...

  7. vuetify中文文档_我们为什么选择Vuetify作为前端框架

    尝试了很多不同的前端框架,最终我们选择Vuetify(https://vuetifyjs.com)前端框架. 从Bootstrap开始,到iview,Buefy,elementUI,我们都是不断的尝试 ...

  8. 跟我学Springboot开发后端管理系统9:AOP+logback+MDC日志输出

    MDC介绍 在比较复杂的应用中,一个请求需要走很多个方法的处理,怎么样才能快速查找一个请求的全部日志呢.在分布式系统中,我们可以用链路追踪,比如zipkin.skywalking去快速查找日志,从而定 ...

  9. 跟我学Springboot开发后端管理系统8:Matrxi-Web权限设计实现

    上篇文章讲述了Matrix-web整体实现的权限控制的思路.现在来回顾一下: 首先,用户需要登录,填用户名.密码,后端接收到登录请求,进行用户.密码的校验,校验成功后则根据用户名生成Token,并返回 ...

最新文章

  1. 多进程爬虫(爬取小说)Python实现
  2. python文本筛选html_Python使用正则表达式去除(过滤)HTML标签提取文字功能
  3. 数据库过滤操作中 != 或者 指定操作数并不能改匹配到NULL值
  4. jquery - 正则表达式
  5. LeetCode--11.盛最多的水(双指针,暴力)
  6. 《正版 图解语音识别 语音识别入门实践教程 语音识别技术书 人工智能机器学习深度学习计算机网络编程书籍R3Z978》[日]荒木雅弘著【摘要 书评 在线阅读】-苏宁易购图书...
  7. bzoj3545: [ONTAK2010]Peaks 主席树合并
  8. FM、LFM、AFM、NFM、DeepFM、 Deep Cross Network
  9. C#获取 Flv视频文件播放时间长度等信息
  10. 2021中兴捧月神算师算法赛,4-24第一场,第一题:A - 跳高,2021-4-27
  11. 对话“第二人生”创始人:这不是一款游戏
  12. 4G终端附着时如何选择SGW和PGW
  13. 用计算机判断函数单调性吗,高中数学函数单调性的判断方法(全)
  14. 联想成全球PC业至尊
  15. 数据湖Iceberg | 实时数据仓库的发展、架构和趋势
  16. 标量、向量、矩阵求导
  17. 富士康java面试_富士康Java开发面试题目
  18. python爬虫怎么爬小说_Python 新手] 爬虫练习:爬取起点中文网的小说排行并存入 excel 表格中...
  19. 学习ofbiz 订单支付设计
  20. ajax瀑布流加载重叠,使用瀑布流插件masonry,图片未加载完就会出现重叠现象,怎么解决?...

热门文章

  1. php网站标签加小图标,在htmltitle/title标签添加图标,网页title左边显示网页的logo图标...
  2. asp listview 单元格文字颜色_如何替换CAD表格中特定区域单元格中的文字?
  3. 美国凯斯西储大学计算机硕士专业怎么样,在凯斯西储大学读硕士大约需要多少花费?...
  4. os sys hashlib
  5. C++之手写strlen函数
  6. 团队作业_1_博客1(分工理解)
  7. 从0开始 Java实习 黑白棋
  8. Windows内核函数
  9. Maven配置tomcat和jetty插件来运行项目
  10. CentOS上安装MyCat-MySQL