基于koa2+mysql+vue2.0+Element+ESlint阳光内容管理系统
简单文章系统模板,含注册、登录、权限管理、用户管理范例。旨在提供一个完整的前后台node+vue2.0开发的脚手架,由您按需扩展。
1.用户注册:邮箱激活帐号、邮箱密码找回;用户登录使用token验证。
2.用户管理:新增帐号、编辑用户、删除用户、激活用户;
3.分类管理:无限级文章分类管理;
4.文章管理:文章审核、新增、编辑、删除;
5.上传管理:删除上传文件、删除上传记录;
点击查看在线DEMO
测试帐号
user:vip会员
password:vip123
git clone https://github.com/scscms/vue-scscms.git
//先git克隆或者下载下来,进入项目目录执行npm命令
npm install
基于 Koa2, 使用了异步函数,其中Node.js版本v8.9 或更高版本 (推荐 8.11.0+)
npm run dev
然后注册帐号并激活,登录,开始旅途。
注意:因使用公用数据库,且开放最大权限供所有人体验,所以所有资料都有可能被其他用户修改或删除的可能!
默认情况下使用的是公用数据库。为了达到更好的用户体验和数据安全推荐您自己安装mysql来测试。
首先安装mysql和新建用户等,教程自行解决。
接着在mysql新建数据库和建表,为了方便操作在此已经提供sql文档:参见server/mysql.sql
或 server/mysql8.sql
然后打开文件server/config.js
修改数据库和邮箱配置。
然后打开文件vue.config.js
修改target: 'http://103.27.4.146:3001'
为你自己的服务器地址,默认为target: 'http://localhost:3001',
。
然后打开文件server/common.js
修改web_domain: 'http://103.27.4.146:3001'
为你自己的服务器地址,默认为web_domain: 'http://localhost:3001',
。
最后执行npm脚本:
npm run start #运行前后端(开发)
开始您的愉快之旅。
注意:在开发环境下上传的图片不能正常访问,需要在生产环境下才能正常浏览图片!(编辑器中的图片使用的是beas64不受此影响)
npm run build
npm run server
├── dist // Vue build 后的文件夹
│ ├── css //打包后的css文件
│ ├── fonts //打包后的字体文件
│ ├── img //打包后的图片文件
│ ├── js //打包后的js文件
│ ├── upFile //上传文件夹
│ ├── favicon.ico // ico图标
│ └── index.html // 首页模板
├── public // 首页模板文件
│ ├── favicon.ico // ico图标
│ └── index.html // 首页模板
├── server // Koa后端,用于提供Api
│ ├── api // api接口文件夹,已经为每个接口独立一个文件
│ ├── common.js // 前后台共用配置参数,包括权限配置
│ ├── config.js // 后台配置文件夹,主要是数据库及邮箱服务配置
│ ├── mysql.sql // 数据库表文档
│ └── routes.js // 后台route-路由
├── src // vue-cli 生成&自己添加的utils工具类
│ ├── assets // 相关静态资源存放
│ ├── components // 公用组件
│ │ ├── index.js
│ │ ├── Sidebar.vue //侧边栏组件
│ │ └── upFile.vue // 上传组件
│ ├── page // 单文件组件
│ │ ├── Article // 文章
│ │ │ ├── add.vue //添加、编辑文章
│ │ │ ├── list.vue //文章列表
│ │ │ └── sort.vue //文章分类
│ │ ├── UpFile // 上传
│ │ │ └── list.vue //上传列表
│ │ ├── User // 用户
│ │ │ ├── add.vue //添加、编辑用户
│ │ │ └── list.vue //用户列表
│ │ ├── Home.vue //公共首页
│ │ ├── Login.vue // 登录页、注册页
│ │ └── NoFind.vue // 404页面
│ ├── store // vuex文件
│ │ └── index.js // 缓存用户信息
│ ├── utils // 插件
│ │ ├── index.js
│ │ ├── ajax.js //axios封装请求
│ │ └── storage.js // localStorage缓存
│ ├── App.vue // 主文件
│ ├── main.js // 引入Vue等资源、挂载Vue的入口js
│ └── routes.js // 前端路由
├── static // README引用的图片文件夹(与项目无关)
├── .editorconfig // 编辑器格式配置
├── .gitignore // Git之忽略文件
├── app.js // 后端服务入口文件
├── babel.config.js // babel配置文件
├── log.txt // 后端请求日志
├── package.json // npm的依赖、项目信息文件
├── package-lock.json // npm安装包锁定文件(想更新包时要删除它)
├── README.md //说明文档
├── server-entry.js // 后端服务入口重启文件
├── vue.config.js // vue配置文件
cdn
减少打包文件此项目直接由vue-cli 3.0
生成并改进。使用的是webpack V4
及node V10.9.0
。
时间匆忙难免错漏,肯请指正。并欢迎交流学习,并献上您的宝贵意思。
QQ群:25702761 邮箱:[email protected]