mirror of
https://github.com/jumpserver/lina.git
synced 2025-09-21 19:19:29 +00:00
[Update] 添加路由
This commit is contained in:
98
README-zh.md
98
README-zh.md
@@ -1,98 +0,0 @@
|
||||
# vue-admin-template
|
||||
|
||||
> 这是一个极简的 vue admin 管理后台。它只包含了 Element UI & axios & iconfont & permission control & lint,这些搭建后台必要的东西。
|
||||
|
||||
[线上地址](http://panjiachen.github.io/vue-admin-template)
|
||||
|
||||
[国内访问](https://panjiachen.gitee.io/vue-admin-template)
|
||||
|
||||
目前版本为 `v4.0+` 基于 `vue-cli` 进行构建,若你想使用旧版本,可以切换分支到[tag/3.11.0](https://github.com/PanJiaChen/vue-admin-template/tree/tag/3.11.0),它不依赖 `vue-cli`。
|
||||
|
||||
## Extra
|
||||
|
||||
如果你想要根据用户角色来动态生成侧边栏和 router,你可以使用该分支[permission-control](https://github.com/PanJiaChen/vue-admin-template/tree/permission-control)
|
||||
|
||||
## 相关项目
|
||||
|
||||
- [vue-element-admin](https://github.com/PanJiaChen/vue-element-admin)
|
||||
|
||||
- [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
|
||||
|
||||
- [vue-typescript-admin-template](https://github.com/Armour/vue-typescript-admin-template)
|
||||
|
||||
- [awesome-project](https://github.com/PanJiaChen/vue-element-admin/issues/2312)
|
||||
|
||||
写了一个系列的教程配套文章,如何从零构建后一个完整的后台项目:
|
||||
|
||||
- [手摸手,带你用 vue 撸后台 系列一(基础篇)](https://juejin.im/post/59097cd7a22b9d0065fb61d2)
|
||||
- [手摸手,带你用 vue 撸后台 系列二(登录权限篇)](https://juejin.im/post/591aa14f570c35006961acac)
|
||||
- [手摸手,带你用 vue 撸后台 系列三 (实战篇)](https://juejin.im/post/593121aa0ce4630057f70d35)
|
||||
- [手摸手,带你用 vue 撸后台 系列四(vueAdmin 一个极简的后台基础模板,专门针对本项目的文章,算作是一篇文档)](https://juejin.im/post/595b4d776fb9a06bbe7dba56)
|
||||
- [手摸手,带你封装一个 vue component](https://segmentfault.com/a/1190000009090836)
|
||||
|
||||
## Build Setup
|
||||
|
||||
```bash
|
||||
# 克隆项目
|
||||
git clone https://github.com/PanJiaChen/vue-admin-template.git
|
||||
|
||||
# 进入项目目录
|
||||
cd vue-admin-template
|
||||
|
||||
# 安装依赖
|
||||
npm install
|
||||
|
||||
# 建议不要直接使用 cnpm 安装以来,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
|
||||
npm install --registry=https://registry.npm.taobao.org
|
||||
|
||||
# 启动服务
|
||||
npm run dev
|
||||
```
|
||||
|
||||
浏览器访问 [http://localhost:9528](http://localhost:9528)
|
||||
|
||||
## 发布
|
||||
|
||||
```bash
|
||||
# 构建测试环境
|
||||
npm run build:stage
|
||||
|
||||
# 构建生产环境
|
||||
npm run build:prod
|
||||
```
|
||||
|
||||
## 其它
|
||||
|
||||
```bash
|
||||
# 预览发布环境效果
|
||||
npm run preview
|
||||
|
||||
# 预览发布环境效果 + 静态资源分析
|
||||
npm run preview -- --report
|
||||
|
||||
# 代码格式检查
|
||||
npm run lint
|
||||
|
||||
# 代码格式检查并自动修复
|
||||
npm run lint -- --fix
|
||||
```
|
||||
|
||||
更多信息请参考 [使用文档](https://panjiachen.github.io/vue-element-admin-site/zh/)
|
||||
|
||||
## Demo
|
||||
|
||||

|
||||
|
||||
## Browsers support
|
||||
|
||||
Modern browsers and Internet Explorer 10+.
|
||||
|
||||
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari |
|
||||
| --------- | --------- | --------- | --------- |
|
||||
| IE10, IE11, Edge| last 2 versions| last 2 versions| last 2 versions
|
||||
|
||||
## License
|
||||
|
||||
[MIT](https://github.com/PanJiaChen/vue-admin-template/blob/master/LICENSE) license.
|
||||
|
||||
Copyright (c) 2017-present PanJiaChen
|
98
README.md
98
README.md
@@ -1,91 +1,25 @@
|
||||
# vue-admin-template
|
||||
#
|
||||
|
||||
English | [简体中文](./README-zh.md)
|
||||
|
||||
> A minimal vue admin template with Element UI & axios & iconfont & permission control & lint
|
||||
|
||||
**Live demo:** http://panjiachen.github.io/vue-admin-template
|
||||
|
||||
|
||||
**The current version is `v4.0+` build on `vue-cli`. If you want to use the old version , you can switch branch to [tag/3.11.0](https://github.com/PanJiaChen/vue-admin-template/tree/tag/3.11.0), it does not rely on `vue-cli`**
|
||||
|
||||
## Build Setup
|
||||
|
||||
|
||||
```bash
|
||||
# clone the project
|
||||
git clone https://github.com/PanJiaChen/vue-admin-template.git
|
||||
|
||||
# enter the project directory
|
||||
cd vue-admin-template
|
||||
|
||||
# install dependency
|
||||
npm install
|
||||
|
||||
# develop
|
||||
npm run dev
|
||||
## Project setup
|
||||
```
|
||||
yarn install
|
||||
```
|
||||
|
||||
This will automatically open http://localhost:9528
|
||||
|
||||
## Build
|
||||
|
||||
```bash
|
||||
# build for test environment
|
||||
npm run build:stage
|
||||
|
||||
# build for production environment
|
||||
npm run build:prod
|
||||
### Compiles and hot-reloads for development
|
||||
```
|
||||
yarn serve
|
||||
```
|
||||
|
||||
## Advanced
|
||||
|
||||
```bash
|
||||
# preview the release environment effect
|
||||
npm run preview
|
||||
|
||||
# preview the release environment effect + static resource analysis
|
||||
npm run preview -- --report
|
||||
|
||||
# code format check
|
||||
npm run lint
|
||||
|
||||
# code format check and auto fix
|
||||
npm run lint -- --fix
|
||||
### Compiles and minifies for production
|
||||
```
|
||||
yarn build
|
||||
```
|
||||
|
||||
Refer to [Documentation](https://panjiachen.github.io/vue-element-admin-site/guide/essentials/deploy.html) for more information
|
||||
### Lints and fixes files
|
||||
```
|
||||
yarn lint
|
||||
```
|
||||
|
||||
## Demo
|
||||
### Customize configuration
|
||||
See [Configuration Reference](https://cli.vuejs.org/config/).
|
||||
|
||||

|
||||
|
||||
## Extra
|
||||
|
||||
If you want router permission && generate menu by user roles , you can use this branch [permission-control](https://github.com/PanJiaChen/vue-admin-template/tree/permission-control)
|
||||
|
||||
For `typescript` version, you can use [vue-typescript-admin-template](https://github.com/Armour/vue-typescript-admin-template) (Credits: [@Armour](https://github.com/Armour))
|
||||
|
||||
## Related Project
|
||||
|
||||
- [vue-element-admin](https://github.com/PanJiaChen/vue-element-admin)
|
||||
|
||||
- [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
|
||||
|
||||
- [vue-typescript-admin-template](https://github.com/Armour/vue-typescript-admin-template)
|
||||
|
||||
- [awesome-project](https://github.com/PanJiaChen/vue-element-admin/issues/2312)
|
||||
|
||||
## Browsers support
|
||||
|
||||
Modern browsers and Internet Explorer 10+.
|
||||
|
||||
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari |
|
||||
| --------- | --------- | --------- | --------- |
|
||||
| IE10, IE11, Edge| last 2 versions| last 2 versions| last 2 versions
|
||||
|
||||
## License
|
||||
|
||||
[MIT](https://github.com/PanJiaChen/vue-admin-template/blob/master/LICENSE) license.
|
||||
|
||||
Copyright (c) 2017-present PanJiaChen
|
||||
|
@@ -6,6 +6,7 @@
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "vue-cli-service serve",
|
||||
"serve": "vue-cli-service serve",
|
||||
"build:prod": "vue-cli-service build",
|
||||
"build:stage": "vue-cli-service build --mode staging",
|
||||
"preview": "node build/index.js --preview",
|
||||
|
@@ -10,12 +10,19 @@ const cn = {
|
||||
'Documents': '文档',
|
||||
'CommercialSupport': '商业支持'
|
||||
},
|
||||
menu: {
|
||||
route: {
|
||||
'dashboard': '仪表盘',
|
||||
'users': '用户管理',
|
||||
'userlist': '用户列表',
|
||||
'usergroup': '用户组',
|
||||
'userList': '用户列表',
|
||||
'userGroupList': '用户组',
|
||||
'assets': '资产管理',
|
||||
'assetList': '资产列表',
|
||||
'domainList': '网关列表',
|
||||
'adminUserList': '管理用户',
|
||||
'systemUserList': '系统用户',
|
||||
'labelList': '标签管理',
|
||||
'commandFilterList': '命令过滤',
|
||||
'platformList': '平台列表',
|
||||
'applications': '应用管理',
|
||||
'perms': '权限管理',
|
||||
'sessions': '会话管理',
|
||||
@@ -299,9 +306,6 @@ const cn = {
|
||||
'setting': '系统设置',
|
||||
'basicsetting': '基本设置'
|
||||
},
|
||||
'route': {
|
||||
'Users': '用户管理'
|
||||
},
|
||||
...zhLocale
|
||||
}
|
||||
|
||||
|
@@ -9,12 +9,11 @@ const en = {
|
||||
'help': 'help',
|
||||
'Documents': 'Documents',
|
||||
'CommercialSupport': 'Commercial Support'
|
||||
|
||||
},
|
||||
menu: {
|
||||
route: {
|
||||
'dashboard': 'Dashboard',
|
||||
'users': 'Users',
|
||||
'userlist': 'User List',
|
||||
'userList': 'User List',
|
||||
'usergroup': 'User Group',
|
||||
'assets': 'Assets',
|
||||
'applications': 'Applications',
|
||||
|
@@ -44,30 +44,125 @@ export const constantRoutes = [
|
||||
redirect: '/dashboard',
|
||||
children: [{
|
||||
path: 'dashboard',
|
||||
name: 'Dashboard',
|
||||
name: 'dashboard',
|
||||
component: () => import('@/views/dashboard/index'),
|
||||
meta: { title: 'Dashboard', icon: 'dashboard' }
|
||||
meta: { title: 'dashboard', icon: 'dashboard' }
|
||||
}]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/example',
|
||||
path: '/users/',
|
||||
component: Layout,
|
||||
redirect: '/example/table',
|
||||
name: 'Example',
|
||||
meta: { title: 'Example', icon: 'example' },
|
||||
name: 'users',
|
||||
meta: { title: 'users', icon: 'user' },
|
||||
children: [
|
||||
{
|
||||
path: 'table',
|
||||
name: 'Table',
|
||||
path: 'users',
|
||||
name: 'userList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'Table', icon: 'table' }
|
||||
meta: { title: 'userList' }
|
||||
},
|
||||
{
|
||||
path: 'tree',
|
||||
name: 'Tree',
|
||||
path: 'groups',
|
||||
name: 'userGroupList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'Tree', icon: 'tree' }
|
||||
meta: { title: 'userGroupList' }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/assets/',
|
||||
component: Layout,
|
||||
name: 'assets',
|
||||
meta: { title: 'assets', icon: 'user' },
|
||||
children: [
|
||||
{
|
||||
path: 'assets',
|
||||
name: 'assetList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'assetList' }
|
||||
},
|
||||
{
|
||||
path: 'domains',
|
||||
name: 'domainList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'domainList' }
|
||||
},
|
||||
{
|
||||
path: 'admin-users',
|
||||
name: 'adminUserList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'adminUserList' }
|
||||
},
|
||||
{
|
||||
path: 'system-users',
|
||||
name: 'systemUserList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'systemUserList' }
|
||||
},
|
||||
{
|
||||
path: 'labels',
|
||||
name: 'labelList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'labelList' }
|
||||
},
|
||||
{
|
||||
path: 'command-filters',
|
||||
name: 'commandFilterList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'commandFilterList' }
|
||||
},
|
||||
{
|
||||
path: 'platforms',
|
||||
name: 'platformList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'platformList' }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/applications/',
|
||||
component: Layout,
|
||||
name: 'applications',
|
||||
meta: { title: 'applications', icon: 'user' },
|
||||
children: [
|
||||
{
|
||||
path: 'remote-apps',
|
||||
name: 'remoteAppList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'remoteAppList' }
|
||||
},
|
||||
{
|
||||
path: 'databases',
|
||||
name: 'databaseList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'databaseList' }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/perms/',
|
||||
component: Layout,
|
||||
name: 'perms',
|
||||
meta: { title: 'perms', icon: 'user' },
|
||||
children: [
|
||||
{
|
||||
path: 'assets-permissions',
|
||||
name: 'assetPermissionList',
|
||||
component: () => import('@/views/table/index'),
|
||||
meta: { title: 'assetPermissionList' }
|
||||
},
|
||||
{
|
||||
path: 'remote-apps-permissions',
|
||||
name: 'remoteAppPermissionList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'remoteAppPermissionList' }
|
||||
},
|
||||
{
|
||||
path: 'database-permissions',
|
||||
name: 'databasePermissionList',
|
||||
component: () => import('@/views/tree/index'),
|
||||
meta: { title: 'databasePermissionList' }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@@ -41,7 +41,7 @@ module.exports = {
|
||||
// change xxx-api/login => mock/login
|
||||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
||||
[process.env.VUE_APP_BASE_API]: {
|
||||
target: `http://localhost`,
|
||||
target: `http://localhost:8080`,
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
['^' + process.env.VUE_APP_BASE_API]: ''
|
||||
|
Reference in New Issue
Block a user