[关闭]
@cvb740 2019-05-10T09:58:49.000000Z 字数 5027 阅读 16615

新门户-项目

vue-ui

admin-board(管理面板)是一套后台集成方案,集成了知识门户、调度与监控、元数据管理、数据质量管理、我的内容、后台管理等五个子系统。


演示地址:

(1)内网测试版:

http://192.168.1.235:60000

(2)外网演示版:

http://139.196.73.235:60000
http://47.103.37.169:60000


1.项目概述

它基于 vue 和 element-ui实现。使用了最新的前端技术栈,如vue、vue-router、vuex、element-ui、axios、es6、webpack、eslint、babel、sass等。参照了vue-element-admin的实现,通过nginx来部署代码、某些接口使用mock.js来进行模拟、接口文档利用koa、swagger和easy-mock来部署。

请先学习前置知识

2. 启动项目

你可以查看创建项目

  1. git clone http://121.33.209.27:8000/summary/%E6%95%B0%E6%8D%AE%E7%AE%A1%E6%8E%A7%E5%B9%B3%E5%8F%B0%2Fadmin_board.git
  2. cd admin_board
  3. npm i
  4. npm run dev

1. 相关链接

(1) git主仓库:

http://121.33.209.27:8000/repositories

注:所有的git相关仓库都在数据管控平台下

(2)admin-board的git仓库:

http://121.33.209.27:8000/summary/%E6%95%B0%E6%8D%AE%E7%AE%A1%E6%8E%A7%E5%B9%B3%E5%8F%B0%2Fadmin_board.git

(3)接口文档:

http://192.168.1.235:4000

(仓库名:swagger-interface)

(4)参照系统:

信息门户和后台管理:

http://192.168.1.238:8080/dm-web/index-standard.jsp


2. 部署

(1)内网测试版:

prod:
http://192.168.1.235:60000

进入项目文件夹,运行

  1. npm run prod

运行

  1. npm run rollback:prod

即可自动回滚prod内网测试版

注意:回滚会交换前后两个版本的代码

(2)外网演示版:

sit:
http://139.196.73.235:60000
sit_better:
http://47.103.37.169:60000

进入项目文件夹,运行

  1. npm run sit

即可自动打包并部署外网演示版
即可自动打包并部署内网测试版
运行

  1. npm run rollback:sit
  2. npm run rollback:sit_better

即可自动回滚sit或sit_better(会将对应服务器上的版本回滚成上一个版本)


3.项目文件结构

  1. ├── build // webpack构建相关
  2. ├── config // webpack打包的配置
  3. ├── src // 主要的源代码
  4. ├── api // $api的诞生地,实现接口的模块化
  5. ├── assets // 项目依赖的静态资源如: 主题、字体、图片等静态资源
  6. ├── components // 可以自己导入使用的全局组件,其中Global下的所有组件会自动导入
  7. ├── directive // vue指令,如权限、可拖拽对话框,可以自己导入使用
  8. ├── filters // 会自动全部导入index.js的所有过滤器
  9. ├── icons // 项目所有 svg icons
  10. ├── init // 初始化,如$eventBus、errorLog、路由跳转的进度条和一些实验性功能
  11. ├── lang // i18n的国际化功能
  12. ├── layout // 全局 layout,包括菜单栏和头部
  13. ├── mixins // 你可以自己导入的mixins混入
  14. ├── mock // mock模拟数据
  15. ├── router // vue-router路由定义
  16. ├── settings // 页面中可配置的一些设置
  17. ├── store // vuex的定义
  18. ├── styles // 全局的样式,会自动导入variables.scss下的所有变量
  19. ├── utils // 全局公用的工具方法,包含数据转换和验证、以及请求的封装
  20. ├── vendor // 第三方插件、包含yfiles、echarts、前端导出excel和zip文件以及记录用户操作
  21. ├── views // 所有的view视图
  22. ├── App.vue // 入口页面
  23. ├── main.js // 入口文件 加载组件 初始化等
  24. ├── static // 纯粹的静态文件 (会直接拷贝)
  25. ├── Tinymce // 富文本编辑器
  26. └── temp-page // 通过iframe加载的html
  27. ├── task // 所有的npm任务
  28. ├── zip // dist文件夹的压缩包,可以实现回退功能
  29. ├── .babelrc // babel的配置
  30. ├── .eslintrc.js // eslint的配置
  31. ├── .posscssrc.js // postcss对css的处理配置,包括autoprefixer
  32. ├── .travis.yml // CI的自动化配置
  33. ├── .gitignore // gitignore文件
  34. ├── favicon.ico // favicon.ico图标
  35. ├── index.html // index.html页面模板
  36. └── package.json // package.json

4.相关自动化npm脚本

以下是一些我已经写好的npm脚本(具体可以查看package.json,以下列出的有删减)
你可以直接 npm run task_name 来执行相关的任务
某些脚本需要你进入task的对应文件夹下去下载相关依赖
推荐使用vue ui的方式来执行脚本

  1. "scripts": {
  2. // 运行开发版本
  3. "dev": "npm run dev:real",
  4. // 展示项目相关的一些链接和说明
  5. "show": "node task/show/index.js",
  6. // 打包并部署到外网的演示版
  7. "sit": "npm run build:sit&&npm run deploy:sit&&npm run deploy:sit_better",
  8. // 打包并部署到内网的测试版
  9. "prod": "npm run build:prod&&npm run deploy:prod",
  10. // =================上面的任务是较为常用的=================
  11. // 回滚外网演示版的sit版本
  12. "rollback:sit": "node task/deploy/rollback/sit.js",
  13. // 回滚外网演示版的sit_better版本
  14. "rollback:sit_better": "node task/deploy/rollback/sit_better.js",
  15. // 回滚内网测试版的prod版本
  16. "rollback:prod": "node task/deploy/rollback/prod.js",
  17. // 快速的从git远程仓库来拉取代码
  18. "git:pull": "node task/git/pull/index.js",
  19. // 快速的拉取并提交本地代码
  20. "git:push": "node task/git/push/index.js",
  21. // 启动一个node服务来预览打包好的dist/index.html页面
  22. "preview-page": "node task/preview-page/index.js",
  23. // 自动从iconfont来下载对应的最新iconfont包
  24. "download-iconfont": "node task/download/iconfont/index.js",
  25. // 利用eslint fix来校验代码
  26. "lint:fix": "eslint --ext .js,.vue src --fix",
  27. "test": "npm run lint:fix",
  28. // 触发precommit的eslint校验
  29. "precommit": "lint-staged",
  30. // 优化对应的文件夹下的所有svg文件
  31. "svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
  32. "svgo:static": "svgo -r -f static/",
  33. },

更新依赖

npm install -g npm-check-updates

如:更新element-ui的package.json

ncu -u element-ui

然后下载这个包

npm install

5. 其他项目介绍

以下是一些相关的项目或工具对应的git仓库介绍,你可以git clone对应的仓库来开发对应项目
git主仓库:

http://121.33.209.27:8000/repositories

下面所有的git相关仓库都在数据管控平台下

(1)接口文档

仓库名:swagger-interface
用于搭建接口代理和接口文档的koa服务器,部署在http://192.168.1.235:4000/,具体的swagger接口文档在/public/data下,你可以改对应的接口文档并提交,之后运行deploy任务即可自动部署(需要你在服务器上配SSH公钥)或者你可以自己去到192.168.1.235的/home/data/server/swagger-interface下依次执行git pull、npm i、npm stop、npm start

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Fswagger-interface.git

(2)信息门户的移动版

仓库名:info-app
用于信息门户的移动版,采用vant框架

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Finfo-app.git

(3)记录用户操作来上报bug

仓库名:operation-record
用于记录测试人员的测试过程并上报bug给前端人员

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Foperation-record.git

(4)爬虫

仓库名:spider
基于think.js的node爬虫,用于某些财经、金融等新闻、舆论数据的爬取

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Fspider.git

(5) npm全局命令行工具

仓库名:global-cli
运行npm init后即可全局安装cv(快速生成view视图文件夹)等全局命令行

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Fglobal-cli.git

(6) 临时的一些演示系统

仓库名: temporary
用于临时的一些测试或者展示demo

git地址:

http://121.33.209.27:8000/summary/%25E6%2595%25B0%25E6%258D%25AE%25E7%25AE%25A1%25E6%258E%25A7%25E5%25B9%25B3%25E5%258F%25B0%252Ftemporary.git


相关介绍

vue-element-admin

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注