@ -0,0 +1,131 @@
|
||||
# Details
|
||||
|
||||
Date : 2023-10-18 08:23:30
|
||||
|
||||
Directory d:\\ruanjiangongc\\vue-admin-template-4.4.0\\vue_page
|
||||
|
||||
Total : 116 files, 4932 codes, 404 comments, 650 blanks, all 5986 lines
|
||||
|
||||
[Summary](results.md) / Details / [Diff Summary](diff.md) / [Diff Details](diff-details.md)
|
||||
|
||||
## Files
|
||||
| filename | language | code | comment | blank | total |
|
||||
| :--- | :--- | ---: | ---: | ---: | ---: |
|
||||
| [.eslintrc.js](/.eslintrc.js) | JavaScript | 195 | 2 | 2 | 199 |
|
||||
| [.travis.yml](/.travis.yml) | YAML | 5 | 0 | 1 | 6 |
|
||||
| [README-zh.md](/README-zh.md) | Markdown | 63 | 0 | 40 | 103 |
|
||||
| [README.md](/README.md) | Markdown | 54 | 0 | 38 | 92 |
|
||||
| [babel.config.js](/babel.config.js) | JavaScript | 10 | 4 | 1 | 15 |
|
||||
| [build/index.js](/build/index.js) | JavaScript | 28 | 0 | 8 | 36 |
|
||||
| [jest.config.js](/jest.config.js) | JavaScript | 22 | 2 | 1 | 25 |
|
||||
| [jsconfig.json](/jsconfig.json) | JSON with Comments | 5 | 5 | 0 | 10 |
|
||||
| [mock/index.js](/mock/index.js) | JavaScript | 43 | 6 | 9 | 58 |
|
||||
| [mock/mock-server.js](/mock/mock-server.js) | JavaScript | 65 | 6 | 11 | 82 |
|
||||
| [mock/table.js](/mock/table.js) | JavaScript | 27 | 0 | 3 | 30 |
|
||||
| [mock/user.js](/mock/user.js) | JavaScript | 70 | 5 | 10 | 85 |
|
||||
| [mock/utils.js](/mock/utils.js) | JavaScript | 20 | 4 | 2 | 26 |
|
||||
| [package.json](/package.json) | JSON | 63 | 0 | 1 | 64 |
|
||||
| [postcss.config.js](/postcss.config.js) | JavaScript | 5 | 2 | 2 | 9 |
|
||||
| [public/index.html](/public/index.html) | HTML | 16 | 1 | 1 | 18 |
|
||||
| [src/App.vue](/src/App.vue) | Vue | 10 | 0 | 2 | 12 |
|
||||
| [src/api/cancer.js](/src/api/cancer.js) | JavaScript | 0 | 0 | 1 | 1 |
|
||||
| [src/api/table.js](/src/api/table.js) | JavaScript | 8 | 0 | 2 | 10 |
|
||||
| [src/api/user.js](/src/api/user.js) | JavaScript | 28 | 0 | 4 | 32 |
|
||||
| [src/components/Breadcrumb/index.vue](/src/components/Breadcrumb/index.vue) | Vue | 70 | 2 | 7 | 79 |
|
||||
| [src/components/Hamburger/index.vue](/src/components/Hamburger/index.vue) | Vue | 41 | 0 | 4 | 45 |
|
||||
| [src/components/SvgIcon/index.vue](/src/components/SvgIcon/index.vue) | Vue | 57 | 1 | 5 | 63 |
|
||||
| [src/components/ValidCode.vue](/src/components/ValidCode.vue) | Vue | 56 | 3 | 2 | 61 |
|
||||
| [src/icons/index.js](/src/icons/index.js) | JavaScript | 6 | 1 | 3 | 10 |
|
||||
| [src/icons/svg/dashboard.svg](/src/icons/svg/dashboard.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/example.svg](/src/icons/svg/example.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/eye-open.svg](/src/icons/svg/eye-open.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/eye.svg](/src/icons/svg/eye.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/form.svg](/src/icons/svg/form.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/link.svg](/src/icons/svg/link.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/nested.svg](/src/icons/svg/nested.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/password.svg](/src/icons/svg/password.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/roleManage.svg](/src/icons/svg/roleManage.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/sys.svg](/src/icons/svg/sys.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/table.svg](/src/icons/svg/table.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/tree.svg](/src/icons/svg/tree.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/user.svg](/src/icons/svg/user.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svg/userManage.svg](/src/icons/svg/userManage.svg) | XML | 1 | 0 | 0 | 1 |
|
||||
| [src/icons/svgo.yml](/src/icons/svgo.yml) | YAML | 5 | 13 | 5 | 23 |
|
||||
| [src/layout/components/AppMain.vue](/src/layout/components/AppMain.vue) | Vue | 40 | 2 | 3 | 45 |
|
||||
| [src/layout/components/Navbar.vue](/src/layout/components/Navbar.vue) | Vue | 122 | 0 | 18 | 140 |
|
||||
| [src/layout/components/Sidebar/FixiOSBug.js](/src/layout/components/Sidebar/FixiOSBug.js) | JavaScript | 24 | 2 | 1 | 27 |
|
||||
| [src/layout/components/Sidebar/Item.vue](/src/layout/components/Sidebar/Item.vue) | Vue | 38 | 0 | 4 | 42 |
|
||||
| [src/layout/components/Sidebar/Link.vue](/src/layout/components/Sidebar/Link.vue) | Vue | 41 | 0 | 3 | 44 |
|
||||
| [src/layout/components/Sidebar/Logo.vue](/src/layout/components/Sidebar/Logo.vue) | Vue | 74 | 0 | 9 | 83 |
|
||||
| [src/layout/components/Sidebar/SidebarItem.vue](/src/layout/components/Sidebar/SidebarItem.vue) | Vue | 83 | 6 | 7 | 96 |
|
||||
| [src/layout/components/Sidebar/index.vue](/src/layout/components/Sidebar/index.vue) | Vue | 53 | 1 | 3 | 57 |
|
||||
| [src/layout/components/TagsView/ScrollPane.vue](/src/layout/components/TagsView/ScrollPane.vue) | Vue | 72 | 4 | 10 | 86 |
|
||||
| [src/layout/components/TagsView/index.vue](/src/layout/components/TagsView/index.vue) | Vue | 273 | 9 | 7 | 289 |
|
||||
| [src/layout/components/ValidCode.vue](/src/layout/components/ValidCode.vue) | Vue | 56 | 3 | 2 | 61 |
|
||||
| [src/layout/components/index.js](/src/layout/components/index.js) | JavaScript | 4 | 0 | 0 | 4 |
|
||||
| [src/layout/index.vue](/src/layout/index.vue) | Vue | 88 | 0 | 8 | 96 |
|
||||
| [src/layout/mixin/ResizeHandler.js](/src/layout/mixin/ResizeHandler.js) | JavaScript | 40 | 2 | 4 | 46 |
|
||||
| [src/main.js](/src/main.js) | JavaScript | 23 | 11 | 10 | 44 |
|
||||
| [src/permission.js](/src/permission.js) | JavaScript | 45 | 10 | 10 | 65 |
|
||||
| [src/router/index.js](/src/router/index.js) | JavaScript | 94 | 151 | 20 | 265 |
|
||||
| [src/settings.js](/src/settings.js) | JavaScript | 5 | 8 | 4 | 17 |
|
||||
| [src/store/getters.js](/src/store/getters.js) | JavaScript | 11 | 0 | 1 | 12 |
|
||||
| [src/store/index.js](/src/store/index.js) | JavaScript | 19 | 0 | 4 | 23 |
|
||||
| [src/store/modules/app.js](/src/store/modules/app.js) | JavaScript | 44 | 0 | 5 | 49 |
|
||||
| [src/store/modules/permission.js](/src/store/modules/permission.js) | JavaScript | 51 | 10 | 9 | 70 |
|
||||
| [src/store/modules/settings.js](/src/store/modules/settings.js) | JavaScript | 25 | 1 | 7 | 33 |
|
||||
| [src/store/modules/tagsView.js](/src/store/modules/tagsView.js) | JavaScript | 147 | 2 | 12 | 161 |
|
||||
| [src/store/modules/user.js](/src/store/modules/user.js) | JavaScript | 84 | 4 | 15 | 103 |
|
||||
| [src/styles/element-ui.scss](/src/styles/element-ui.scss) | SCSS | 35 | 5 | 10 | 50 |
|
||||
| [src/styles/index.scss](/src/styles/index.scss) | SCSS | 54 | 1 | 11 | 66 |
|
||||
| [src/styles/mixin.scss](/src/styles/mixin.scss) | SCSS | 24 | 0 | 5 | 29 |
|
||||
| [src/styles/sidebar.scss](/src/styles/sidebar.scss) | SCSS | 180 | 6 | 41 | 227 |
|
||||
| [src/styles/transition.scss](/src/styles/transition.scss) | SCSS | 35 | 4 | 10 | 49 |
|
||||
| [src/styles/variables.scss](/src/styles/variables.scss) | SCSS | 18 | 3 | 5 | 26 |
|
||||
| [src/utils/auth.js](/src/utils/auth.js) | JavaScript | 11 | 0 | 5 | 16 |
|
||||
| [src/utils/get-page-title.js](/src/utils/get-page-title.js) | JavaScript | 8 | 0 | 3 | 11 |
|
||||
| [src/utils/index.js](/src/utils/index.js) | JavaScript | 88 | 23 | 7 | 118 |
|
||||
| [src/utils/request.js](/src/utils/request.js) | JavaScript | 56 | 21 | 9 | 86 |
|
||||
| [src/utils/validate.js](/src/utils/validate.js) | JavaScript | 6 | 13 | 3 | 22 |
|
||||
| [src/views/404.vue](/src/views/404.vue) | Vue | 225 | 0 | 4 | 229 |
|
||||
| [src/views/analyse/Manage.vue](/src/views/analyse/Manage.vue) | Vue | 12 | 0 | 4 | 16 |
|
||||
| [src/views/analyse/index.vue](/src/views/analyse/index.vue) | Vue | 66 | 1 | 7 | 74 |
|
||||
| [src/views/cancer/breast.vue](/src/views/cancer/breast.vue) | Vue | 13 | 0 | 2 | 15 |
|
||||
| [src/views/cancer/index.vue](/src/views/cancer/index.vue) | Vue | 195 | 3 | 17 | 215 |
|
||||
| [src/views/cancer/lung.vue](/src/views/cancer/lung.vue) | Vue | 9 | 0 | 4 | 13 |
|
||||
| [src/views/cancer/merge.vue](/src/views/cancer/merge.vue) | Vue | 9 | 0 | 4 | 13 |
|
||||
| [src/views/cancer/stomach.vue](/src/views/cancer/stomach.vue) | Vue | 9 | 0 | 4 | 13 |
|
||||
| [src/views/capital/001.css](/src/views/capital/001.css) | CSS | 41 | 0 | 6 | 47 |
|
||||
| [src/views/capital/index.vue](/src/views/capital/index.vue) | Vue | 88 | 0 | 10 | 98 |
|
||||
| [src/views/dashboard/index.vue](/src/views/dashboard/index.vue) | Vue | 27 | 0 | 4 | 31 |
|
||||
| [src/views/discuss/index.vue](/src/views/discuss/index.vue) | Vue | 9 | 0 | 2 | 11 |
|
||||
| [src/views/form/index.vue](/src/views/form/index.vue) | Vue | 82 | 0 | 4 | 86 |
|
||||
| [src/views/login/index.vue](/src/views/login/index.vue) | Vue | 239 | 3 | 24 | 266 |
|
||||
| [src/views/mytest/mytest001.vue](/src/views/mytest/mytest001.vue) | Vue | 9 | 0 | 4 | 13 |
|
||||
| [src/views/nested/menu1/index.vue](/src/views/nested/menu1/index.vue) | Vue | 7 | 0 | 1 | 8 |
|
||||
| [src/views/nested/menu1/menu1-1/index.vue](/src/views/nested/menu1/menu1-1/index.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/nested/menu1/menu1-2/index.vue](/src/views/nested/menu1/menu1-2/index.vue) | Vue | 7 | 0 | 1 | 8 |
|
||||
| [src/views/nested/menu1/menu1-2/menu1-2-1/index.vue](/src/views/nested/menu1/menu1-2/menu1-2-1/index.vue) | Vue | 5 | 0 | 1 | 6 |
|
||||
| [src/views/nested/menu1/menu1-2/menu1-2-2/index.vue](/src/views/nested/menu1/menu1-2/menu1-2-2/index.vue) | Vue | 5 | 0 | 1 | 6 |
|
||||
| [src/views/nested/menu1/menu1-3/index.vue](/src/views/nested/menu1/menu1-3/index.vue) | Vue | 5 | 0 | 1 | 6 |
|
||||
| [src/views/nested/menu2/index.vue](/src/views/nested/menu2/index.vue) | Vue | 5 | 0 | 1 | 6 |
|
||||
| [src/views/sys/role.vue](/src/views/sys/role.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/sys/user.vue](/src/views/sys/user.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/table/index.vue](/src/views/table/index.vue) | Vue | 77 | 0 | 3 | 80 |
|
||||
| [src/views/test/login.test.vue](/src/views/test/login.test.vue) | Vue | 68 | 0 | 7 | 75 |
|
||||
| [src/views/test/test1.vue](/src/views/test/test1.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/test/test2.vue](/src/views/test/test2.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/test/test3.vue](/src/views/test/test3.vue) | Vue | 11 | 0 | 4 | 15 |
|
||||
| [src/views/test/test4.vue](/src/views/test/test4.vue) | Vue | 213 | 3 | 26 | 242 |
|
||||
| [src/views/tree/index.vue](/src/views/tree/index.vue) | Vue | 72 | 0 | 7 | 79 |
|
||||
| [tests/unit/.eslintrc.js](/tests/unit/.eslintrc.js) | JavaScript | 5 | 0 | 1 | 6 |
|
||||
| [tests/unit/components/Breadcrumb.spec.js](/tests/unit/components/Breadcrumb.spec.js) | JavaScript | 80 | 14 | 5 | 99 |
|
||||
| [tests/unit/components/Hamburger.spec.js](/tests/unit/components/Hamburger.spec.js) | JavaScript | 18 | 0 | 1 | 19 |
|
||||
| [tests/unit/components/SvgIcon.spec.js](/tests/unit/components/SvgIcon.spec.js) | JavaScript | 22 | 0 | 1 | 23 |
|
||||
| [tests/unit/utils/formatTime.spec.js](/tests/unit/utils/formatTime.spec.js) | JavaScript | 28 | 0 | 3 | 31 |
|
||||
| [tests/unit/utils/param2Obj.spec.js](/tests/unit/utils/param2Obj.spec.js) | JavaScript | 13 | 0 | 2 | 15 |
|
||||
| [tests/unit/utils/parseTime.spec.js](/tests/unit/utils/parseTime.spec.js) | JavaScript | 33 | 0 | 3 | 36 |
|
||||
| [tests/unit/utils/validate.spec.js](/tests/unit/utils/validate.spec.js) | JavaScript | 16 | 0 | 2 | 18 |
|
||||
| [vue.config.js](/vue.config.js) | JavaScript | 97 | 21 | 9 | 127 |
|
||||
|
||||
[Summary](results.md) / Details / [Diff Summary](diff.md) / [Diff Details](diff-details.md)
|
@ -0,0 +1,15 @@
|
||||
# Diff Details
|
||||
|
||||
Date : 2023-10-18 08:23:30
|
||||
|
||||
Directory d:\\ruanjiangongc\\vue-admin-template-4.4.0\\vue_page
|
||||
|
||||
Total : 0 files, 0 codes, 0 comments, 0 blanks, all 0 lines
|
||||
|
||||
[Summary](results.md) / [Details](details.md) / [Diff Summary](diff.md) / Diff Details
|
||||
|
||||
## Files
|
||||
| filename | language | code | comment | blank | total |
|
||||
| :--- | :--- | ---: | ---: | ---: | ---: |
|
||||
|
||||
[Summary](results.md) / [Details](details.md) / [Diff Summary](diff.md) / Diff Details
|
|
@ -0,0 +1,19 @@
|
||||
# Diff Summary
|
||||
|
||||
Date : 2023-10-18 08:23:30
|
||||
|
||||
Directory d:\\ruanjiangongc\\vue-admin-template-4.4.0\\vue_page
|
||||
|
||||
Total : 0 files, 0 codes, 0 comments, 0 blanks, all 0 lines
|
||||
|
||||
[Summary](results.md) / [Details](details.md) / Diff Summary / [Diff Details](diff-details.md)
|
||||
|
||||
## Languages
|
||||
| language | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
|
||||
## Directories
|
||||
| path | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
|
||||
[Summary](results.md) / [Details](details.md) / Diff Summary / [Diff Details](diff-details.md)
|
@ -0,0 +1,22 @@
|
||||
Date : 2023-10-18 08:23:30
|
||||
Directory : d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page
|
||||
Total : 0 files, 0 codes, 0 comments, 0 blanks, all 0 lines
|
||||
|
||||
Languages
|
||||
+----------+------------+------------+------------+------------+------------+
|
||||
| language | files | code | comment | blank | total |
|
||||
+----------+------------+------------+------------+------------+------------+
|
||||
+----------+------------+------------+------------+------------+------------+
|
||||
|
||||
Directories
|
||||
+------+------------+------------+------------+------------+------------+
|
||||
| path | files | code | comment | blank | total |
|
||||
+------+------------+------------+------------+------------+------------+
|
||||
+------+------------+------------+------------+------------+------------+
|
||||
|
||||
Files
|
||||
+----------+----------+------------+------------+------------+------------+
|
||||
| filename | language | code | comment | blank | total |
|
||||
+----------+----------+------------+------------+------------+------------+
|
||||
| Total | | 0 | 0 | 0 | 0 |
|
||||
+----------+----------+------------+------------+------------+------------+
|
|
@ -0,0 +1,87 @@
|
||||
# Summary
|
||||
|
||||
Date : 2023-10-18 08:23:30
|
||||
|
||||
Directory d:\\ruanjiangongc\\vue-admin-template-4.4.0\\vue_page
|
||||
|
||||
Total : 116 files, 4932 codes, 404 comments, 650 blanks, all 5986 lines
|
||||
|
||||
Summary / [Details](details.md) / [Diff Summary](diff.md) / [Diff Details](diff-details.md)
|
||||
|
||||
## Languages
|
||||
| language | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
| Vue | 46 | 2,696 | 41 | 261 | 2,998 |
|
||||
| JavaScript | 42 | 1,624 | 325 | 215 | 2,164 |
|
||||
| SCSS | 6 | 346 | 19 | 82 | 447 |
|
||||
| Markdown | 2 | 117 | 0 | 78 | 195 |
|
||||
| JSON | 1 | 63 | 0 | 1 | 64 |
|
||||
| CSS | 1 | 41 | 0 | 6 | 47 |
|
||||
| HTML | 1 | 16 | 1 | 1 | 18 |
|
||||
| XML | 14 | 14 | 0 | 0 | 14 |
|
||||
| YAML | 2 | 10 | 13 | 6 | 29 |
|
||||
| JSON with Comments | 1 | 5 | 5 | 0 | 10 |
|
||||
|
||||
## Directories
|
||||
| path | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
| . | 116 | 4,932 | 404 | 650 | 5,986 |
|
||||
| . (Files) | 10 | 519 | 36 | 95 | 650 |
|
||||
| build | 1 | 28 | 0 | 8 | 36 |
|
||||
| mock | 5 | 225 | 21 | 35 | 281 |
|
||||
| public | 1 | 16 | 1 | 1 | 18 |
|
||||
| src | 91 | 3,929 | 332 | 493 | 4,754 |
|
||||
| src (Files) | 4 | 83 | 29 | 26 | 138 |
|
||||
| src\\api | 3 | 36 | 0 | 7 | 43 |
|
||||
| src\\components | 4 | 224 | 6 | 18 | 248 |
|
||||
| src\\components (Files) | 1 | 56 | 3 | 2 | 61 |
|
||||
| src\\components\\Breadcrumb | 1 | 70 | 2 | 7 | 79 |
|
||||
| src\\components\\Hamburger | 1 | 41 | 0 | 4 | 45 |
|
||||
| src\\components\\SvgIcon | 1 | 57 | 1 | 5 | 63 |
|
||||
| src\\icons | 16 | 25 | 14 | 8 | 47 |
|
||||
| src\\icons (Files) | 2 | 11 | 14 | 8 | 33 |
|
||||
| src\\icons\\svg | 14 | 14 | 0 | 0 | 14 |
|
||||
| src\\layout | 14 | 1,008 | 29 | 79 | 1,116 |
|
||||
| src\\layout (Files) | 1 | 88 | 0 | 8 | 96 |
|
||||
| src\\layout\\components | 12 | 880 | 27 | 67 | 974 |
|
||||
| src\\layout\\components (Files) | 4 | 222 | 5 | 23 | 250 |
|
||||
| src\\layout\\components\\Sidebar | 6 | 313 | 9 | 27 | 349 |
|
||||
| src\\layout\\components\\TagsView | 2 | 345 | 13 | 17 | 375 |
|
||||
| src\\layout\\mixin | 1 | 40 | 2 | 4 | 46 |
|
||||
| src\\router | 1 | 94 | 151 | 20 | 265 |
|
||||
| src\\store | 7 | 381 | 17 | 53 | 451 |
|
||||
| src\\store (Files) | 2 | 30 | 0 | 5 | 35 |
|
||||
| src\\store\\modules | 5 | 351 | 17 | 48 | 416 |
|
||||
| src\\styles | 6 | 346 | 19 | 82 | 447 |
|
||||
| src\\utils | 5 | 169 | 57 | 27 | 253 |
|
||||
| src\\views | 31 | 1,563 | 10 | 173 | 1,746 |
|
||||
| src\\views (Files) | 1 | 225 | 0 | 4 | 229 |
|
||||
| src\\views\\analyse | 2 | 78 | 1 | 11 | 90 |
|
||||
| src\\views\\cancer | 5 | 235 | 3 | 31 | 269 |
|
||||
| src\\views\\capital | 2 | 129 | 0 | 16 | 145 |
|
||||
| src\\views\\dashboard | 1 | 27 | 0 | 4 | 31 |
|
||||
| src\\views\\discuss | 1 | 9 | 0 | 2 | 11 |
|
||||
| src\\views\\form | 1 | 82 | 0 | 4 | 86 |
|
||||
| src\\views\\login | 1 | 239 | 3 | 24 | 266 |
|
||||
| src\\views\\mytest | 1 | 9 | 0 | 4 | 13 |
|
||||
| src\\views\\nested | 7 | 45 | 0 | 10 | 55 |
|
||||
| src\\views\\nested\\menu1 | 6 | 40 | 0 | 9 | 49 |
|
||||
| src\\views\\nested\\menu1 (Files) | 1 | 7 | 0 | 1 | 8 |
|
||||
| src\\views\\nested\\menu1\\menu1-1 | 1 | 11 | 0 | 4 | 15 |
|
||||
| src\\views\\nested\\menu1\\menu1-2 | 3 | 17 | 0 | 3 | 20 |
|
||||
| src\\views\\nested\\menu1\\menu1-2 (Files) | 1 | 7 | 0 | 1 | 8 |
|
||||
| src\\views\\nested\\menu1\\menu1-2\\menu1-2-1 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\\views\\nested\\menu1\\menu1-2\\menu1-2-2 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\\views\\nested\\menu1\\menu1-3 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\\views\\nested\\menu2 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\\views\\sys | 2 | 22 | 0 | 8 | 30 |
|
||||
| src\\views\\table | 1 | 77 | 0 | 3 | 80 |
|
||||
| src\\views\\test | 5 | 314 | 3 | 45 | 362 |
|
||||
| src\\views\\tree | 1 | 72 | 0 | 7 | 79 |
|
||||
| tests | 8 | 215 | 14 | 18 | 247 |
|
||||
| tests\\unit | 8 | 215 | 14 | 18 | 247 |
|
||||
| tests\\unit (Files) | 1 | 5 | 0 | 1 | 6 |
|
||||
| tests\\unit\\components | 3 | 120 | 14 | 7 | 141 |
|
||||
| tests\\unit\\utils | 4 | 90 | 0 | 10 | 100 |
|
||||
|
||||
Summary / [Details](details.md) / [Diff Summary](diff.md) / [Diff Details](diff-details.md)
|
@ -0,0 +1,206 @@
|
||||
Date : 2023-10-18 08:23:30
|
||||
Directory : d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page
|
||||
Total : 116 files, 4932 codes, 404 comments, 650 blanks, all 5986 lines
|
||||
|
||||
Languages
|
||||
+--------------------+------------+------------+------------+------------+------------+
|
||||
| language | files | code | comment | blank | total |
|
||||
+--------------------+------------+------------+------------+------------+------------+
|
||||
| Vue | 46 | 2,696 | 41 | 261 | 2,998 |
|
||||
| JavaScript | 42 | 1,624 | 325 | 215 | 2,164 |
|
||||
| SCSS | 6 | 346 | 19 | 82 | 447 |
|
||||
| Markdown | 2 | 117 | 0 | 78 | 195 |
|
||||
| JSON | 1 | 63 | 0 | 1 | 64 |
|
||||
| CSS | 1 | 41 | 0 | 6 | 47 |
|
||||
| HTML | 1 | 16 | 1 | 1 | 18 |
|
||||
| XML | 14 | 14 | 0 | 0 | 14 |
|
||||
| YAML | 2 | 10 | 13 | 6 | 29 |
|
||||
| JSON with Comments | 1 | 5 | 5 | 0 | 10 |
|
||||
+--------------------+------------+------------+------------+------------+------------+
|
||||
|
||||
Directories
|
||||
+-------------------------------------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| path | files | code | comment | blank | total |
|
||||
+-------------------------------------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| . | 116 | 4,932 | 404 | 650 | 5,986 |
|
||||
| . (Files) | 10 | 519 | 36 | 95 | 650 |
|
||||
| build | 1 | 28 | 0 | 8 | 36 |
|
||||
| mock | 5 | 225 | 21 | 35 | 281 |
|
||||
| public | 1 | 16 | 1 | 1 | 18 |
|
||||
| src | 91 | 3,929 | 332 | 493 | 4,754 |
|
||||
| src (Files) | 4 | 83 | 29 | 26 | 138 |
|
||||
| src\api | 3 | 36 | 0 | 7 | 43 |
|
||||
| src\components | 4 | 224 | 6 | 18 | 248 |
|
||||
| src\components (Files) | 1 | 56 | 3 | 2 | 61 |
|
||||
| src\components\Breadcrumb | 1 | 70 | 2 | 7 | 79 |
|
||||
| src\components\Hamburger | 1 | 41 | 0 | 4 | 45 |
|
||||
| src\components\SvgIcon | 1 | 57 | 1 | 5 | 63 |
|
||||
| src\icons | 16 | 25 | 14 | 8 | 47 |
|
||||
| src\icons (Files) | 2 | 11 | 14 | 8 | 33 |
|
||||
| src\icons\svg | 14 | 14 | 0 | 0 | 14 |
|
||||
| src\layout | 14 | 1,008 | 29 | 79 | 1,116 |
|
||||
| src\layout (Files) | 1 | 88 | 0 | 8 | 96 |
|
||||
| src\layout\components | 12 | 880 | 27 | 67 | 974 |
|
||||
| src\layout\components (Files) | 4 | 222 | 5 | 23 | 250 |
|
||||
| src\layout\components\Sidebar | 6 | 313 | 9 | 27 | 349 |
|
||||
| src\layout\components\TagsView | 2 | 345 | 13 | 17 | 375 |
|
||||
| src\layout\mixin | 1 | 40 | 2 | 4 | 46 |
|
||||
| src\router | 1 | 94 | 151 | 20 | 265 |
|
||||
| src\store | 7 | 381 | 17 | 53 | 451 |
|
||||
| src\store (Files) | 2 | 30 | 0 | 5 | 35 |
|
||||
| src\store\modules | 5 | 351 | 17 | 48 | 416 |
|
||||
| src\styles | 6 | 346 | 19 | 82 | 447 |
|
||||
| src\utils | 5 | 169 | 57 | 27 | 253 |
|
||||
| src\views | 31 | 1,563 | 10 | 173 | 1,746 |
|
||||
| src\views (Files) | 1 | 225 | 0 | 4 | 229 |
|
||||
| src\views\analyse | 2 | 78 | 1 | 11 | 90 |
|
||||
| src\views\cancer | 5 | 235 | 3 | 31 | 269 |
|
||||
| src\views\capital | 2 | 129 | 0 | 16 | 145 |
|
||||
| src\views\dashboard | 1 | 27 | 0 | 4 | 31 |
|
||||
| src\views\discuss | 1 | 9 | 0 | 2 | 11 |
|
||||
| src\views\form | 1 | 82 | 0 | 4 | 86 |
|
||||
| src\views\login | 1 | 239 | 3 | 24 | 266 |
|
||||
| src\views\mytest | 1 | 9 | 0 | 4 | 13 |
|
||||
| src\views\nested | 7 | 45 | 0 | 10 | 55 |
|
||||
| src\views\nested\menu1 | 6 | 40 | 0 | 9 | 49 |
|
||||
| src\views\nested\menu1 (Files) | 1 | 7 | 0 | 1 | 8 |
|
||||
| src\views\nested\menu1\menu1-1 | 1 | 11 | 0 | 4 | 15 |
|
||||
| src\views\nested\menu1\menu1-2 | 3 | 17 | 0 | 3 | 20 |
|
||||
| src\views\nested\menu1\menu1-2 (Files) | 1 | 7 | 0 | 1 | 8 |
|
||||
| src\views\nested\menu1\menu1-2\menu1-2-1 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\views\nested\menu1\menu1-2\menu1-2-2 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\views\nested\menu1\menu1-3 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\views\nested\menu2 | 1 | 5 | 0 | 1 | 6 |
|
||||
| src\views\sys | 2 | 22 | 0 | 8 | 30 |
|
||||
| src\views\table | 1 | 77 | 0 | 3 | 80 |
|
||||
| src\views\test | 5 | 314 | 3 | 45 | 362 |
|
||||
| src\views\tree | 1 | 72 | 0 | 7 | 79 |
|
||||
| tests | 8 | 215 | 14 | 18 | 247 |
|
||||
| tests\unit | 8 | 215 | 14 | 18 | 247 |
|
||||
| tests\unit (Files) | 1 | 5 | 0 | 1 | 6 |
|
||||
| tests\unit\components | 3 | 120 | 14 | 7 | 141 |
|
||||
| tests\unit\utils | 4 | 90 | 0 | 10 | 100 |
|
||||
+-------------------------------------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
|
||||
Files
|
||||
+-------------------------------------------------------------------------------------------------------+--------------------+------------+------------+------------+------------+
|
||||
| filename | language | code | comment | blank | total |
|
||||
+-------------------------------------------------------------------------------------------------------+--------------------+------------+------------+------------+------------+
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\.eslintrc.js | JavaScript | 195 | 2 | 2 | 199 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\.travis.yml | YAML | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\README-zh.md | Markdown | 63 | 0 | 40 | 103 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\README.md | Markdown | 54 | 0 | 38 | 92 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\babel.config.js | JavaScript | 10 | 4 | 1 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\build\index.js | JavaScript | 28 | 0 | 8 | 36 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\jest.config.js | JavaScript | 22 | 2 | 1 | 25 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\jsconfig.json | JSON with Comments | 5 | 5 | 0 | 10 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\mock\index.js | JavaScript | 43 | 6 | 9 | 58 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\mock\mock-server.js | JavaScript | 65 | 6 | 11 | 82 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\mock\table.js | JavaScript | 27 | 0 | 3 | 30 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\mock\user.js | JavaScript | 70 | 5 | 10 | 85 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\mock\utils.js | JavaScript | 20 | 4 | 2 | 26 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\package.json | JSON | 63 | 0 | 1 | 64 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\postcss.config.js | JavaScript | 5 | 2 | 2 | 9 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\public\index.html | HTML | 16 | 1 | 1 | 18 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\App.vue | Vue | 10 | 0 | 2 | 12 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\api\cancer.js | JavaScript | 0 | 0 | 1 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\api\table.js | JavaScript | 8 | 0 | 2 | 10 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\api\user.js | JavaScript | 28 | 0 | 4 | 32 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\components\Breadcrumb\index.vue | Vue | 70 | 2 | 7 | 79 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\components\Hamburger\index.vue | Vue | 41 | 0 | 4 | 45 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\components\SvgIcon\index.vue | Vue | 57 | 1 | 5 | 63 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\components\ValidCode.vue | Vue | 56 | 3 | 2 | 61 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\index.js | JavaScript | 6 | 1 | 3 | 10 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\dashboard.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\example.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\eye-open.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\eye.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\form.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\link.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\nested.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\password.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\roleManage.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\sys.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\table.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\tree.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\user.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svg\userManage.svg | XML | 1 | 0 | 0 | 1 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\icons\svgo.yml | YAML | 5 | 13 | 5 | 23 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\AppMain.vue | Vue | 40 | 2 | 3 | 45 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Navbar.vue | Vue | 122 | 0 | 18 | 140 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\FixiOSBug.js | JavaScript | 24 | 2 | 1 | 27 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\Item.vue | Vue | 38 | 0 | 4 | 42 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\Link.vue | Vue | 41 | 0 | 3 | 44 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\Logo.vue | Vue | 74 | 0 | 9 | 83 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\SidebarItem.vue | Vue | 83 | 6 | 7 | 96 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\Sidebar\index.vue | Vue | 53 | 1 | 3 | 57 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\TagsView\ScrollPane.vue | Vue | 72 | 4 | 10 | 86 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\TagsView\index.vue | Vue | 273 | 9 | 7 | 289 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\ValidCode.vue | Vue | 56 | 3 | 2 | 61 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\components\index.js | JavaScript | 4 | 0 | 0 | 4 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\index.vue | Vue | 88 | 0 | 8 | 96 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\layout\mixin\ResizeHandler.js | JavaScript | 40 | 2 | 4 | 46 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\main.js | JavaScript | 23 | 11 | 10 | 44 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\permission.js | JavaScript | 45 | 10 | 10 | 65 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\router\index.js | JavaScript | 94 | 151 | 20 | 265 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\settings.js | JavaScript | 5 | 8 | 4 | 17 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\getters.js | JavaScript | 11 | 0 | 1 | 12 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\index.js | JavaScript | 19 | 0 | 4 | 23 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\modules\app.js | JavaScript | 44 | 0 | 5 | 49 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\modules\permission.js | JavaScript | 51 | 10 | 9 | 70 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\modules\settings.js | JavaScript | 25 | 1 | 7 | 33 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\modules\tagsView.js | JavaScript | 147 | 2 | 12 | 161 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\store\modules\user.js | JavaScript | 84 | 4 | 15 | 103 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\element-ui.scss | SCSS | 35 | 5 | 10 | 50 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\index.scss | SCSS | 54 | 1 | 11 | 66 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\mixin.scss | SCSS | 24 | 0 | 5 | 29 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\sidebar.scss | SCSS | 180 | 6 | 41 | 227 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\transition.scss | SCSS | 35 | 4 | 10 | 49 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\styles\variables.scss | SCSS | 18 | 3 | 5 | 26 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\utils\auth.js | JavaScript | 11 | 0 | 5 | 16 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\utils\get-page-title.js | JavaScript | 8 | 0 | 3 | 11 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\utils\index.js | JavaScript | 88 | 23 | 7 | 118 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\utils\request.js | JavaScript | 56 | 21 | 9 | 86 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\utils\validate.js | JavaScript | 6 | 13 | 3 | 22 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\404.vue | Vue | 225 | 0 | 4 | 229 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\analyse\Manage.vue | Vue | 12 | 0 | 4 | 16 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\analyse\index.vue | Vue | 66 | 1 | 7 | 74 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\cancer\breast.vue | Vue | 13 | 0 | 2 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\cancer\index.vue | Vue | 195 | 3 | 17 | 215 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\cancer\lung.vue | Vue | 9 | 0 | 4 | 13 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\cancer\merge.vue | Vue | 9 | 0 | 4 | 13 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\cancer\stomach.vue | Vue | 9 | 0 | 4 | 13 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\capital\001.css | CSS | 41 | 0 | 6 | 47 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\capital\index.vue | Vue | 88 | 0 | 10 | 98 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\dashboard\index.vue | Vue | 27 | 0 | 4 | 31 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\discuss\index.vue | Vue | 9 | 0 | 2 | 11 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\form\index.vue | Vue | 82 | 0 | 4 | 86 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\login\index.vue | Vue | 239 | 3 | 24 | 266 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\mytest\mytest001.vue | Vue | 9 | 0 | 4 | 13 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\index.vue | Vue | 7 | 0 | 1 | 8 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\menu1-1\index.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\menu1-2\index.vue | Vue | 7 | 0 | 1 | 8 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\menu1-2\menu1-2-1\index.vue | Vue | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\menu1-2\menu1-2-2\index.vue | Vue | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu1\menu1-3\index.vue | Vue | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\nested\menu2\index.vue | Vue | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\sys\role.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\sys\user.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\table\index.vue | Vue | 77 | 0 | 3 | 80 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\test\login.test.vue | Vue | 68 | 0 | 7 | 75 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\test\test1.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\test\test2.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\test\test3.vue | Vue | 11 | 0 | 4 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\test\test4.vue | Vue | 213 | 3 | 26 | 242 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\src\views\tree\index.vue | Vue | 72 | 0 | 7 | 79 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\.eslintrc.js | JavaScript | 5 | 0 | 1 | 6 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\components\Breadcrumb.spec.js | JavaScript | 80 | 14 | 5 | 99 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\components\Hamburger.spec.js | JavaScript | 18 | 0 | 1 | 19 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\components\SvgIcon.spec.js | JavaScript | 22 | 0 | 1 | 23 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\utils\formatTime.spec.js | JavaScript | 28 | 0 | 3 | 31 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\utils\param2Obj.spec.js | JavaScript | 13 | 0 | 2 | 15 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\utils\parseTime.spec.js | JavaScript | 33 | 0 | 3 | 36 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\tests\unit\utils\validate.spec.js | JavaScript | 16 | 0 | 2 | 18 |
|
||||
| d:\ruanjiangongc\vue-admin-template-4.4.0\vue_page\vue.config.js | JavaScript | 97 | 21 | 9 | 127 |
|
||||
| Total | | 4,932 | 404 | 650 | 5,986 |
|
||||
+-------------------------------------------------------------------------------------------------------+--------------------+------------+------------+------------+------------+
|
@ -0,0 +1,14 @@
|
||||
# http://editorconfig.org
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
insert_final_newline = false
|
||||
trim_trailing_whitespace = false
|
@ -0,0 +1,5 @@
|
||||
# just a flag
|
||||
ENV = 'development'
|
||||
|
||||
# base api
|
||||
VUE_APP_BASE_API = 'http://localhost:9999'
|
@ -0,0 +1,6 @@
|
||||
# just a flag
|
||||
ENV = 'production'
|
||||
|
||||
# base api
|
||||
VUE_APP_BASE_API = '/prod-api'
|
||||
|
@ -0,0 +1,8 @@
|
||||
NODE_ENV = production
|
||||
|
||||
# just a flag
|
||||
ENV = 'staging'
|
||||
|
||||
# base api
|
||||
VUE_APP_BASE_API = '/stage-api'
|
||||
|
@ -0,0 +1,4 @@
|
||||
build/*.js
|
||||
src/assets
|
||||
public
|
||||
dist
|
@ -0,0 +1,198 @@
|
||||
module.exports = {
|
||||
root: true,
|
||||
parserOptions: {
|
||||
parser: 'babel-eslint',
|
||||
sourceType: 'module'
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
node: true,
|
||||
es6: true,
|
||||
},
|
||||
extends: ['plugin:vue/recommended', 'eslint:recommended'],
|
||||
|
||||
// add your custom rules here
|
||||
//it is base on https://github.com/vuejs/eslint-config-vue
|
||||
rules: {
|
||||
"vue/max-attributes-per-line": [2, {
|
||||
"singleline": 10,
|
||||
"multiline": {
|
||||
"max": 1,
|
||||
"allowFirstLine": false
|
||||
}
|
||||
}],
|
||||
"vue/singleline-html-element-content-newline": "off",
|
||||
"vue/multiline-html-element-content-newline":"off",
|
||||
"vue/name-property-casing": ["error", "PascalCase"],
|
||||
"vue/no-v-html": "off",
|
||||
'accessor-pairs': 2,
|
||||
'arrow-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'block-spacing': [2, 'always'],
|
||||
'brace-style': [2, '1tbs', {
|
||||
'allowSingleLine': true
|
||||
}],
|
||||
'camelcase': [0, {
|
||||
'properties': 'always'
|
||||
}],
|
||||
'comma-dangle': [2, 'never'],
|
||||
'comma-spacing': [2, {
|
||||
'before': false,
|
||||
'after': true
|
||||
}],
|
||||
'comma-style': [2, 'last'],
|
||||
'constructor-super': 2,
|
||||
'curly': [2, 'multi-line'],
|
||||
'dot-location': [2, 'property'],
|
||||
'eol-last': 2,
|
||||
'eqeqeq': ["error", "always", {"null": "ignore"}],
|
||||
'generator-star-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'handle-callback-err': [2, '^(err|error)$'],
|
||||
'indent': [2, 2, {
|
||||
'SwitchCase': 1
|
||||
}],
|
||||
'jsx-quotes': [2, 'prefer-single'],
|
||||
'key-spacing': [2, {
|
||||
'beforeColon': false,
|
||||
'afterColon': true
|
||||
}],
|
||||
'keyword-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'new-cap': [2, {
|
||||
'newIsCap': true,
|
||||
'capIsNew': false
|
||||
}],
|
||||
'new-parens': 2,
|
||||
'no-array-constructor': 2,
|
||||
'no-caller': 2,
|
||||
'no-console': 'off',
|
||||
'no-class-assign': 2,
|
||||
'no-cond-assign': 2,
|
||||
'no-const-assign': 2,
|
||||
'no-control-regex': 0,
|
||||
'no-delete-var': 2,
|
||||
'no-dupe-args': 2,
|
||||
'no-dupe-class-members': 2,
|
||||
'no-dupe-keys': 2,
|
||||
'no-duplicate-case': 2,
|
||||
'no-empty-character-class': 2,
|
||||
'no-empty-pattern': 2,
|
||||
'no-eval': 2,
|
||||
'no-ex-assign': 2,
|
||||
'no-extend-native': 2,
|
||||
'no-extra-bind': 2,
|
||||
'no-extra-boolean-cast': 2,
|
||||
'no-extra-parens': [2, 'functions'],
|
||||
'no-fallthrough': 2,
|
||||
'no-floating-decimal': 2,
|
||||
'no-func-assign': 2,
|
||||
'no-implied-eval': 2,
|
||||
'no-inner-declarations': [2, 'functions'],
|
||||
'no-invalid-regexp': 2,
|
||||
'no-irregular-whitespace': 2,
|
||||
'no-iterator': 2,
|
||||
'no-label-var': 2,
|
||||
'no-labels': [2, {
|
||||
'allowLoop': false,
|
||||
'allowSwitch': false
|
||||
}],
|
||||
'no-lone-blocks': 2,
|
||||
'no-mixed-spaces-and-tabs': 2,
|
||||
'no-multi-spaces': 2,
|
||||
'no-multi-str': 2,
|
||||
'no-multiple-empty-lines': [2, {
|
||||
'max': 1
|
||||
}],
|
||||
'no-native-reassign': 2,
|
||||
'no-negated-in-lhs': 2,
|
||||
'no-new-object': 2,
|
||||
'no-new-require': 2,
|
||||
'no-new-symbol': 2,
|
||||
'no-new-wrappers': 2,
|
||||
'no-obj-calls': 2,
|
||||
'no-octal': 2,
|
||||
'no-octal-escape': 2,
|
||||
'no-path-concat': 2,
|
||||
'no-proto': 2,
|
||||
'no-redeclare': 2,
|
||||
'no-regex-spaces': 2,
|
||||
'no-return-assign': [2, 'except-parens'],
|
||||
'no-self-assign': 2,
|
||||
'no-self-compare': 2,
|
||||
'no-sequences': 2,
|
||||
'no-shadow-restricted-names': 2,
|
||||
'no-spaced-func': 2,
|
||||
'no-sparse-arrays': 2,
|
||||
'no-this-before-super': 2,
|
||||
'no-throw-literal': 2,
|
||||
'no-trailing-spaces': 2,
|
||||
'no-undef': 2,
|
||||
'no-undef-init': 2,
|
||||
'no-unexpected-multiline': 2,
|
||||
'no-unmodified-loop-condition': 2,
|
||||
'no-unneeded-ternary': [2, {
|
||||
'defaultAssignment': false
|
||||
}],
|
||||
'no-unreachable': 2,
|
||||
'no-unsafe-finally': 2,
|
||||
'no-unused-vars': [2, {
|
||||
'vars': 'all',
|
||||
'args': 'none'
|
||||
}],
|
||||
'no-useless-call': 2,
|
||||
'no-useless-computed-key': 2,
|
||||
'no-useless-constructor': 2,
|
||||
'no-useless-escape': 0,
|
||||
'no-whitespace-before-property': 2,
|
||||
'no-with': 2,
|
||||
'one-var': [2, {
|
||||
'initialized': 'never'
|
||||
}],
|
||||
'operator-linebreak': [2, 'after', {
|
||||
'overrides': {
|
||||
'?': 'before',
|
||||
':': 'before'
|
||||
}
|
||||
}],
|
||||
'padded-blocks': [2, 'never'],
|
||||
'quotes': [2, 'single', {
|
||||
'avoidEscape': true,
|
||||
'allowTemplateLiterals': true
|
||||
}],
|
||||
'semi': [2, 'never'],
|
||||
'semi-spacing': [2, {
|
||||
'before': false,
|
||||
'after': true
|
||||
}],
|
||||
'space-before-blocks': [2, 'always'],
|
||||
'space-before-function-paren': [2, 'never'],
|
||||
'space-in-parens': [2, 'never'],
|
||||
'space-infix-ops': 2,
|
||||
'space-unary-ops': [2, {
|
||||
'words': true,
|
||||
'nonwords': false
|
||||
}],
|
||||
'spaced-comment': [2, 'always', {
|
||||
'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ',']
|
||||
}],
|
||||
'template-curly-spacing': [2, 'never'],
|
||||
'use-isnan': 2,
|
||||
'valid-typeof': 2,
|
||||
'wrap-iife': [2, 'any'],
|
||||
'yield-star-spacing': [2, 'both'],
|
||||
'yoda': [2, 'never'],
|
||||
'prefer-const': 2,
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
|
||||
'object-curly-spacing': [2, 'always', {
|
||||
objectsInObjects: false
|
||||
}],
|
||||
'array-bracket-spacing': [2, 'never']
|
||||
}
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
.DS_Store
|
||||
node_modules/
|
||||
dist/
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
package-lock.json
|
||||
tests/**/coverage/
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
.vscode
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
@ -0,0 +1,5 @@
|
||||
language: node_js
|
||||
node_js: 10
|
||||
script: npm run test
|
||||
notifications:
|
||||
email: false
|
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2017-present PanJiaChen
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
@ -0,0 +1,91 @@
|
||||
# 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
|
||||
```
|
||||
|
||||
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
|
||||
```
|
||||
|
||||
## 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
|
||||
```
|
||||
|
||||
Refer to [Documentation](https://panjiachen.github.io/vue-element-admin-site/guide/essentials/deploy.html) for more information
|
||||
|
||||
## Demo
|
||||
|
||||

|
||||
|
||||
## 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
|
@ -0,0 +1,14 @@
|
||||
module.exports = {
|
||||
presets: [
|
||||
// https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app
|
||||
'@vue/cli-plugin-babel/preset'
|
||||
],
|
||||
'env': {
|
||||
'development': {
|
||||
// babel-plugin-dynamic-import-node plugin only does one thing by converting all import() to require().
|
||||
// This plugin can significantly increase the speed of hot updates, when you have a large number of pages.
|
||||
// https://panjiachen.github.io/vue-element-admin-site/guide/advanced/lazy-loading.html
|
||||
'plugins': ['dynamic-import-node']
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
const { run } = require('runjs')
|
||||
const chalk = require('chalk')
|
||||
const config = require('../vue.config.js')
|
||||
const rawArgv = process.argv.slice(2)
|
||||
const args = rawArgv.join(' ')
|
||||
|
||||
if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
|
||||
const report = rawArgv.includes('--report')
|
||||
|
||||
run(`vue-cli-service build ${args}`)
|
||||
|
||||
const port = 9526
|
||||
const publicPath = config.publicPath
|
||||
|
||||
var connect = require('connect')
|
||||
var serveStatic = require('serve-static')
|
||||
const app = connect()
|
||||
|
||||
app.use(
|
||||
publicPath,
|
||||
serveStatic('./dist', {
|
||||
index: ['index.html', '/']
|
||||
})
|
||||
)
|
||||
|
||||
app.listen(port, function () {
|
||||
console.log(chalk.green(`> Preview at http://localhost:${port}${publicPath}`))
|
||||
if (report) {
|
||||
console.log(chalk.green(`> Report at http://localhost:${port}${publicPath}report.html`))
|
||||
}
|
||||
|
||||
})
|
||||
} else {
|
||||
run(`vue-cli-service build ${args}`)
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
module.exports = {
|
||||
moduleFileExtensions: ['js', 'jsx', 'json', 'vue'],
|
||||
transform: {
|
||||
'^.+\\.vue$': 'vue-jest',
|
||||
'.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$':
|
||||
'jest-transform-stub',
|
||||
'^.+\\.jsx?$': 'babel-jest'
|
||||
},
|
||||
moduleNameMapper: {
|
||||
'^@/(.*)$': '<rootDir>/src/$1'
|
||||
},
|
||||
snapshotSerializers: ['jest-serializer-vue'],
|
||||
testMatch: [
|
||||
'**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)'
|
||||
],
|
||||
collectCoverageFrom: ['src/utils/**/*.{js,vue}', '!src/utils/auth.js', '!src/utils/request.js', 'src/components/**/*.{js,vue}'],
|
||||
coverageDirectory: '<rootDir>/tests/unit/coverage',
|
||||
// 'collectCoverage': true,
|
||||
'coverageReporters': [
|
||||
'lcov',
|
||||
'text-summary'
|
||||
],
|
||||
testURL: 'http://localhost/'
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"baseUrl": "./",
|
||||
"paths": {
|
||||
"@/*": ["src/*"]
|
||||
}
|
||||
},
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
@ -0,0 +1,57 @@
|
||||
const Mock = require('mockjs')
|
||||
const { param2Obj } = require('./utils')
|
||||
|
||||
const user = require('./user')
|
||||
const table = require('./table')
|
||||
|
||||
const mocks = [
|
||||
...user,
|
||||
...table
|
||||
]
|
||||
|
||||
// for front mock
|
||||
// please use it cautiously, it will redefine XMLHttpRequest,
|
||||
// which will cause many of your third-party libraries to be invalidated(like progress event).
|
||||
function mockXHR() {
|
||||
// mock patch
|
||||
// https://github.com/nuysoft/Mock/issues/300
|
||||
Mock.XHR.prototype.proxy_send = Mock.XHR.prototype.send
|
||||
Mock.XHR.prototype.send = function() {
|
||||
if (this.custom.xhr) {
|
||||
this.custom.xhr.withCredentials = this.withCredentials || false
|
||||
|
||||
if (this.responseType) {
|
||||
this.custom.xhr.responseType = this.responseType
|
||||
}
|
||||
}
|
||||
this.proxy_send(...arguments)
|
||||
}
|
||||
|
||||
function XHR2ExpressReqWrap(respond) {
|
||||
return function(options) {
|
||||
let result = null
|
||||
if (respond instanceof Function) {
|
||||
const { body, type, url } = options
|
||||
// https://expressjs.com/en/4x/api.html#req
|
||||
result = respond({
|
||||
method: type,
|
||||
body: JSON.parse(body),
|
||||
query: param2Obj(url)
|
||||
})
|
||||
} else {
|
||||
result = respond
|
||||
}
|
||||
return Mock.mock(result)
|
||||
}
|
||||
}
|
||||
|
||||
for (const i of mocks) {
|
||||
Mock.mock(new RegExp(i.url), i.type || 'get', XHR2ExpressReqWrap(i.response))
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
mocks,
|
||||
mockXHR
|
||||
}
|
||||
|
@ -0,0 +1,81 @@
|
||||
const chokidar = require('chokidar')
|
||||
const bodyParser = require('body-parser')
|
||||
const chalk = require('chalk')
|
||||
const path = require('path')
|
||||
const Mock = require('mockjs')
|
||||
|
||||
const mockDir = path.join(process.cwd(), 'mock')
|
||||
|
||||
function registerRoutes(app) {
|
||||
let mockLastIndex
|
||||
const { mocks } = require('./index.js')
|
||||
const mocksForServer = mocks.map(route => {
|
||||
return responseFake(route.url, route.type, route.response)
|
||||
})
|
||||
for (const mock of mocksForServer) {
|
||||
app[mock.type](mock.url, mock.response)
|
||||
mockLastIndex = app._router.stack.length
|
||||
}
|
||||
const mockRoutesLength = Object.keys(mocksForServer).length
|
||||
return {
|
||||
mockRoutesLength: mockRoutesLength,
|
||||
mockStartIndex: mockLastIndex - mockRoutesLength
|
||||
}
|
||||
}
|
||||
|
||||
function unregisterRoutes() {
|
||||
Object.keys(require.cache).forEach(i => {
|
||||
if (i.includes(mockDir)) {
|
||||
delete require.cache[require.resolve(i)]
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// for mock server
|
||||
const responseFake = (url, type, respond) => {
|
||||
return {
|
||||
url: new RegExp(`${process.env.VUE_APP_BASE_API}${url}`),
|
||||
type: type || 'get',
|
||||
response(req, res) {
|
||||
console.log('request invoke:' + req.path)
|
||||
res.json(Mock.mock(respond instanceof Function ? respond(req, res) : respond))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = app => {
|
||||
// parse app.body
|
||||
// https://expressjs.com/en/4x/api.html#req.body
|
||||
app.use(bodyParser.json())
|
||||
app.use(bodyParser.urlencoded({
|
||||
extended: true
|
||||
}))
|
||||
|
||||
const mockRoutes = registerRoutes(app)
|
||||
var mockRoutesLength = mockRoutes.mockRoutesLength
|
||||
var mockStartIndex = mockRoutes.mockStartIndex
|
||||
|
||||
// watch files, hot reload mock server
|
||||
chokidar.watch(mockDir, {
|
||||
ignored: /mock-server/,
|
||||
ignoreInitial: true
|
||||
}).on('all', (event, path) => {
|
||||
if (event === 'change' || event === 'add') {
|
||||
try {
|
||||
// remove mock routes stack
|
||||
app._router.stack.splice(mockStartIndex, mockRoutesLength)
|
||||
|
||||
// clear routes cache
|
||||
unregisterRoutes()
|
||||
|
||||
const mockRoutes = registerRoutes(app)
|
||||
mockRoutesLength = mockRoutes.mockRoutesLength
|
||||
mockStartIndex = mockRoutes.mockStartIndex
|
||||
|
||||
console.log(chalk.magentaBright(`\n > Mock Server hot reload success! changed ${path}`))
|
||||
} catch (error) {
|
||||
console.log(chalk.redBright(error))
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
const Mock = require('mockjs')
|
||||
|
||||
const data = Mock.mock({
|
||||
'items|30': [{
|
||||
id: '@id',
|
||||
title: '@sentence(10, 20)',
|
||||
'status|1': ['published', 'draft', 'deleted'],
|
||||
author: 'name',
|
||||
display_time: '@datetime',
|
||||
pageviews: '@integer(300, 5000)'
|
||||
}]
|
||||
})
|
||||
|
||||
module.exports = [
|
||||
{
|
||||
url: '/vue-admin-template/table/list',
|
||||
type: 'get',
|
||||
response: config => {
|
||||
const items = data.items
|
||||
return {
|
||||
code: 20000,
|
||||
data: {
|
||||
total: items.length,
|
||||
items: items
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
@ -0,0 +1,84 @@
|
||||
|
||||
const tokens = {
|
||||
admin: {
|
||||
token: 'admin-token'
|
||||
},
|
||||
editor: {
|
||||
token: 'editor-token'
|
||||
}
|
||||
}
|
||||
|
||||
const users = {
|
||||
'admin-token': {
|
||||
roles: ['admin'],
|
||||
introduction: 'I am a super administrator',
|
||||
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
|
||||
name: 'Super Admin'
|
||||
},
|
||||
'editor-token': {
|
||||
roles: ['editor'],
|
||||
introduction: 'I am an editor',
|
||||
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
|
||||
name: 'Normal Editor'
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = [
|
||||
// user login
|
||||
{
|
||||
url: '/vue-admin-template/user/login',
|
||||
type: 'post',
|
||||
response: config => {
|
||||
const { username } = config.body
|
||||
const token = tokens[username]
|
||||
|
||||
// mock error
|
||||
if (!token) {
|
||||
return {
|
||||
code: 60204,
|
||||
message: 'Account and password are incorrect.'
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
code: 20000,
|
||||
data: token
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// get user info
|
||||
{
|
||||
url: '/vue-admin-template/user/info\.*',
|
||||
type: 'get',
|
||||
response: config => {
|
||||
const { token } = config.query
|
||||
const info = users[token]
|
||||
|
||||
// mock error
|
||||
if (!info) {
|
||||
return {
|
||||
code: 50008,
|
||||
message: 'Login failed, unable to get user details.'
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
code: 20000,
|
||||
data: info
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// user logout
|
||||
{
|
||||
url: '/vue-admin-template/user/logout',
|
||||
type: 'post',
|
||||
response: _ => {
|
||||
return {
|
||||
code: 20000,
|
||||
data: 'success'
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
@ -0,0 +1,25 @@
|
||||
/**
|
||||
* @param {string} url
|
||||
* @returns {Object}
|
||||
*/
|
||||
function param2Obj(url) {
|
||||
const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ')
|
||||
if (!search) {
|
||||
return {}
|
||||
}
|
||||
const obj = {}
|
||||
const searchArr = search.split('&')
|
||||
searchArr.forEach(v => {
|
||||
const index = v.indexOf('=')
|
||||
if (index !== -1) {
|
||||
const name = v.substring(0, index)
|
||||
const val = v.substring(index + 1, v.length)
|
||||
obj[name] = val
|
||||
}
|
||||
})
|
||||
return obj
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
param2Obj
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
{
|
||||
"name": "vue-admin-template",
|
||||
"version": "4.4.0",
|
||||
"description": "A vue admin template with Element UI & axios & iconfont & permission control & lint",
|
||||
"author": "Pan <panfree23@gmail.com>",
|
||||
"scripts": {
|
||||
"dev": "vue-cli-service serve",
|
||||
"build:prod": "vue-cli-service build",
|
||||
"build:stage": "vue-cli-service build --mode staging",
|
||||
"preview": "node build/index.js --preview",
|
||||
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
|
||||
"lint": "eslint --ext .js,.vue src",
|
||||
"test:unit": "jest --clearCache && vue-cli-service test:unit",
|
||||
"test:ci": "npm run lint && npm run test:unit"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "^0.18.1",
|
||||
"core-js": "3.6.5",
|
||||
"element-ui": "2.13.2",
|
||||
"js-cookie": "2.2.0",
|
||||
"normalize.css": "7.0.0",
|
||||
"nprogress": "0.2.0",
|
||||
"path-to-regexp": "2.4.0",
|
||||
"vue": "2.6.10",
|
||||
"vue-router": "3.0.6",
|
||||
"vuex": "3.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^20.5.6",
|
||||
"@vue/cli-plugin-babel": "4.4.4",
|
||||
"@vue/cli-plugin-eslint": "4.4.4",
|
||||
"@vue/cli-plugin-unit-jest": "4.4.4",
|
||||
"@vue/cli-service": "4.4.4",
|
||||
"@vue/test-utils": "1.0.0-beta.29",
|
||||
"autoprefixer": "9.5.1",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-jest": "23.6.0",
|
||||
"babel-plugin-dynamic-import-node": "2.3.3",
|
||||
"chalk": "2.4.2",
|
||||
"connect": "3.6.6",
|
||||
"eslint": "6.7.2",
|
||||
"eslint-plugin-vue": "6.2.2",
|
||||
"html-webpack-plugin": "3.2.0",
|
||||
"mockjs": "1.0.1-beta3",
|
||||
"runjs": "4.3.2",
|
||||
"sass": "1.26.8",
|
||||
"sass-loader": "8.0.2",
|
||||
"script-ext-html-webpack-plugin": "2.1.3",
|
||||
"serve-static": "1.13.2",
|
||||
"svg-sprite-loader": "4.1.3",
|
||||
"svgo": "1.2.2",
|
||||
"vue-template-compiler": "2.6.10"
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=8.9",
|
||||
"npm": ">= 3.0.0"
|
||||
},
|
||||
"license": "MIT"
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
// https://github.com/michael-ciniawsky/postcss-load-config
|
||||
|
||||
module.exports = {
|
||||
'plugins': {
|
||||
// to edit target browsers: use "browserslist" field in package.json
|
||||
'autoprefixer': {}
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 66 KiB |
@ -0,0 +1,17 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
||||
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
||||
<title><%= webpackConfig.name %></title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
<strong>We're sorry but <%= webpackConfig.name %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
||||
</noscript>
|
||||
<div id="app"></div>
|
||||
<!-- built files will be auto injected -->
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,11 @@
|
||||
<template>
|
||||
<div id="app">
|
||||
<router-view />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'App'
|
||||
}
|
||||
</script>
|
@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getList(params) {
|
||||
return request({
|
||||
url: '/table/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function login(data) {
|
||||
return request({
|
||||
url: '/user/login',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getInfo(token) {
|
||||
return request({
|
||||
url: '/user/info',
|
||||
method: 'get',
|
||||
params: { token }
|
||||
})
|
||||
}
|
||||
|
||||
export function logout() {
|
||||
return request({
|
||||
url: '/user/logout',
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
export function cancerForm(token) {
|
||||
return request({
|
||||
url:'/information/cancer',
|
||||
method: 'post',
|
||||
params: {token}
|
||||
})
|
||||
}
|
After Width: | Height: | Size: 738 KiB |
After Width: | Height: | Size: 96 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |
After Width: | Height: | Size: 796 KiB |