Vue+ElementUI+.netcore先后端分离框架开发项目实战

原文:https://blog.csdn.net/vM199zkg3Y7150u5/article/details/102550228html

框架采用.NET Core + Vue先后端分离,而且支持前端、后台代码业务动态扩展,框架内置了一套有着20多种属性配置的代码生成器,可灵活配置生成的代码,代码生成器界面配置完成便可生成单表(主表)的增、删、改、查、导入、导出、上传、审核基础功能。只须要简单了解便可上手开发前端

 

1、框架基础功能已构建完成,可直接上手开发功能vue

 

  • Vol.WebApi类库可独立用于restful api服务单独部署,用于其余系统单独提供接口,直接上手编写业务代码便可node

     

  • Vue+Vol.WebApi 可用于现有框架先后端分离进行开发mysql

     

  • Vol.Web类库可用于传统MVC+Razor方式进行项目开发webpack

     

  • Vol.Builder类库可做为一个独立的代码生成器,可生成cshtml页面、Vue页面、Model文件、Service与Repository.cs业务处理代码类ios

     

  • 可做为一个独立站点来发布静态html网页git

     

  • 可直接用于H5移动App开发H5开发:http://132.232.2.109/app/guidegithub

 

2、框架特色web

 

  • 支持前端、后台基础业务代码动态扩展,可在现有框架增、删、改、查、导入、导出、审核基础业务上扩展复杂的业务代码

     

  • 基本业务所有由框架完成,上手便可对基础业务之外的代码进行扩展

     

  • 上手简单,须要.net core2.一、VsCode mysql/sqlservcer 20十二、redis(可选) 及以上版本的开发环境

     

  • 学习成本低,封装了经常使用可扩展组件及Demo(前端基于Iview/Element-UI组件进行了二次封装、后台提供了大量的扩展方法)

     

  • 开发效率高,内定制开发的代码生成器,生成前端(Vue、后台代码),代码生成器已完成90%以上的重复工做,只须要在提供的扩展类型中实现其余业务

     

  • 前端vue页面表单下拉/多选框完成自动绑定数据源,不须要写任何代码,并支持扩展自定开发绑定。

     

  • 后台已完成权限、菜单、JWT等内部功能

 

若是你没有作过webpack+vue工程化开发项目,可能会刚开始至关不适应,或者安装环境老是出问题,但只要你熟悉开发流程后,你会发现采用Vue开发比Jquery爽太多了。上手项目需重点了解基础Vue语法,特别是了解组件、路由及import的使用

 

3、开发及依赖环境

 

VS2017 、.NetCore2.1 、EFCore2.一、JWT、Dapper、Autofac、SqlServer/MySql、Redis(可选,没有redis的在appsetting.json中不用配置,默认使用内置IMemory)、

VsCode、Vue2.0(webpack、node.js,若是没有此环境自行搜索:vue webpack npm)、Vuex、axios、promise、IView、Element-ui

 

4、项目运行

 

若是你没有前端环境,请先安装node

 

前端开发使用VsCode

 

一、使用cmd命令切换至前端Vue项目.../VOL.Vue路径下,执行npm install命令(只有历来没执行过此命令的才执行npm install)

 

二、运行后端项目:在后端项目路径.../VOL.WebApi/运行builder_run.bat端口设置的是9991,运行前先看appsettings.josn配置属性说明

 

三、运行前端项目:在前端Vue项目路径.../VOL.Vue/运行run.bat(每次启动会进行编译,这个时间可能会有点长)

 

四、输入http://localhost:8080访问

 

5、功能介绍

 

640?wx_fmt=png

 

6、框架文档、代码生成器

 

Dome:http://132.232.2.109/

 

640?wx_fmt=png

 

一、只读基础表单

 

整个只读的基础表单的全部先后端代码,所有由代码生成器生成,代码生成器中几乎不须要配置,并支持并后端业务代码扩展,直接生成代码后,配置菜单权限便可

 

640?wx_fmt=png

 

二、自动绑定下拉框数据表单

 

整个自动绑定下拉框数据表单的全部先后端代码,所有由代码生成器生成,并支持并后端业务代码扩展,在代码生成器中只须要指定数据源编号,页面加载时会根据编号自动加载数据源并绑定

 

640?wx_fmt=png

 

三、启用图片支持、审核表单

 

整个启用图片支持、审核表单的全部先后端代码,所有由代码生成器生成,并支持并后端业务代码扩展,审核功能须要在菜单配置权限、代码生成器中勾选启用图片支持

 

640?wx_fmt=png

 

四、高级查询

 

整个表单的全部先后端代码,所有由代码生成器生成,并支持并后端业务代码扩展,查询字段、类型(下拉框、日期、TextArea等)、所在行与列都由代码生成器完成,不须要写任何代码

 

640?wx_fmt=png

 

五、单表新建、编辑

 

单表新建、编辑全部先后端代码,所有由代码生成器生成,并支持并后端业务代码扩展,新建、编辑字段、类型(下拉框、日期、TextArea等)、所在行与列、字段是否只读、标签显示的长度等都由代码生成器完成,不须要写任何代码

 

640?wx_fmt=png

 

六、主从表新建、编辑

 

主从表新建、编辑全部先后端代码,所有由代码生成器生成,并支持并后端业务代码扩展,新建、编辑从表配置、字段、类型(下拉框、日期、TextArea等)、所在行与列、字段是否只读、标签显示的长度等都由代码生成器完成,不须要写任何代码

 

640?wx_fmt=png

 

七、单列、多列Form表单

 

单列、多列Form表单,已封装成组件,而且支持组件扩展。可配置显示的列的数量、是否只读、列的数据类型(日期、下拉框、TextArea、列宽、自动绑定数据源、图片上传等), 这些只须要配置JSON格式便可使用

 

640?wx_fmt=png

 

八、可配置的Table(自动/手动加载table数据、自动绑定数据源、编辑功能)

 

单列、多列Form表单,已封装成组件,而且支持组件扩展。可配置显示的列的数量、是否只读、列的数据类型(日期、下拉框、TextArea、列宽、自动绑定数据源、图片上传等), 这些只须要配置JSON格式便可使用

 

从后台加载数据、自动绑定数据

 

640?wx_fmt=png

 

可编辑的table,手动绑定数据、自动绑定数据源

 

640?wx_fmt=png

 

表单与table混合使用

 

640?wx_fmt=png

 

九、excel导入

 

excel导入整个页面都由代码生成器生成,导入的字段、字段是否必填,下载模板也由代码生成器上配置(本身根据实际须要决定是否采用此方法),导入时会验证是否为空与数据的合法性,逻辑校验本身实现扩展方法便可

 

640?wx_fmt=png

 

十、H5开发

 

H5只是作了一个简单的Demo,若是你有H5开发经验,请忽略,若是你没有H5开发经验,http://132.232.2.109/app/guide

 

640?wx_fmt=jpeg

 

十一、权限分配

 

目前只实现了对用户的角色的Action进行权限分配

 

640?wx_fmt=png

 

十二、菜单管理

 

 

默认8种权限,可自行定义其余权限(代码生成器完后,直接在菜单上配置url(url路径为自动生成前端的router->path,今后处复制过过便可))

 

640?wx_fmt=png

 

1三、我的中心

 

我的中心目前只开发了页面与修改密码,其余功能自行根据须要实现

 

640?wx_fmt=png

 

1四、前端、后台业务代码动态扩展

 

框架提供了前台后端扩展方法与属性,只须要根据本身的业务实现扩展业务。后台大部分都采用的委托扩展方法,这里只截了一张图前端数据加载事件的扩展方法,先后台完整扩展参考Demo:http://132.232.2.109/SellOrder

 

640?wx_fmt=png

 

1五、代码生成器

 

代码生成器提供了20多种可配置的属性,可灵活配置显示、查询、编辑、导入、导出、主从关系等功能点击看代码生成器文档

 

640?wx_fmt=png

 

 

还有角色管理、日志管理、数据源管理、其余组件、后台代码等功能就再也不介绍了。

 

7、总结

 

此框架由代码生成器完成了大部分工做能极大减小代码量,并支持前台端代码的扩展。

 

若是你对先后端分离开发的方式或H5开发有兴趣,那么但愿此框架对能你有所帮助!

 

若是你以为框架对你有用,帮忙点个星,很是感谢!

 

  • Demo地址:http://132.232.2.109 账号:admin666密码:123456(本地超级管理员账号:admin密码123456)

     

  • GitHub地址:https://github.com/cq-panda/Vue.NetCore.git

     

  • 若是你须要Quartz.Net作定时任务管理,你能够试试这个:https://github.com/cq-panda/Quartz.NetUI

    (站点与MySql部署在同一个1G1核1M带宽的服务Centos服务上,访问可能会出现延迟现象)

相关文章
相关标签/搜索