├── static
└── .gitkeep
├── README.md
├── config
├── prod.env.js
├── dev.env.js
└── index.js
├── src
├── assets
│ ├── 1.jpg
│ ├── 1.png
│ ├── 2.jpg
│ ├── 3.jpg
│ ├── B1.jpg
│ ├── B2.jpg
│ ├── B3.jpg
│ ├── B4.jpg
│ ├── B6.jpg
│ ├── B7.jpg
│ ├── B8.jpg
│ ├── by.jpg
│ ├── gkd.jpg
│ ├── hit.png
│ ├── LOGO.jpg
│ ├── hitbj.png
│ ├── safe.jpg
│ ├── 中国移动1.jpg
│ ├── 公安部一所.jpg
│ ├── 安天科技.png
│ ├── 清华大学.png
│ ├── 知道创宇.png
│ ├── 腾讯计算机.png
│ ├── Bfirst3.jpg
│ ├── Bfirst5.jpg
│ ├── netlogo.jpg
│ ├── netlogo2.jpg
│ └── nssflogo.jpg
├── files
│ ├── 丽江.jpg
│ ├── 哗哗.jpg
│ └── 宫崎骏.jpg
├── global.js
├── App.vue
├── svg
│ ├── news.svg
│ ├── admin.svg
│ ├── news1.svg
│ ├── pics.svg
│ ├── logo.svg
│ ├── new.svg
│ ├── notice.svg
│ └── member.svg
├── components
│ ├── MemberPage.vue
│ ├── ManagePage.vue
│ ├── PicDetail.vue
│ ├── NewsDetail.vue
│ ├── manager
│ │ ├── ManNotice.vue
│ │ ├── ManNews.vue
│ │ ├── ManPic.vue
│ │ ├── UserReg.vue
│ │ ├── ManDoc.vue
│ │ ├── NewNotice.vue
│ │ ├── UserProject.vue
│ │ ├── NewPic.vue
│ │ ├── UserLevel.vue
│ │ └── NewNews.vue
│ ├── DocPage.vue
│ ├── NoticePage.vue
│ ├── NewsPage.vue
│ └── Home.vue
├── vuex
│ └── store.js
├── main.js
├── form
│ └── SignUpForm.vue
└── router
│ └── index.js
├── theme
└── index.less
├── .editorconfig
├── .gitignore
├── .postcssrc.js
├── index.html
├── .babelrc
└── package.json
/static/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # NetSafe_Frontend
2 | 网络安全态势感知新闻平台(前台)
3 |
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | NODE_ENV: '"production"',
3 | }
4 |
--------------------------------------------------------------------------------
/src/assets/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/1.jpg
--------------------------------------------------------------------------------
/src/assets/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/1.png
--------------------------------------------------------------------------------
/src/assets/2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/2.jpg
--------------------------------------------------------------------------------
/src/assets/3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/3.jpg
--------------------------------------------------------------------------------
/src/files/丽江.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/files/丽江.jpg
--------------------------------------------------------------------------------
/src/files/哗哗.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/files/哗哗.jpg
--------------------------------------------------------------------------------
/src/assets/B1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B1.jpg
--------------------------------------------------------------------------------
/src/assets/B2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B2.jpg
--------------------------------------------------------------------------------
/src/assets/B3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B3.jpg
--------------------------------------------------------------------------------
/src/assets/B4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B4.jpg
--------------------------------------------------------------------------------
/src/assets/B6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B6.jpg
--------------------------------------------------------------------------------
/src/assets/B7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B7.jpg
--------------------------------------------------------------------------------
/src/assets/B8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/B8.jpg
--------------------------------------------------------------------------------
/src/assets/by.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/by.jpg
--------------------------------------------------------------------------------
/src/assets/gkd.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/gkd.jpg
--------------------------------------------------------------------------------
/src/assets/hit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/hit.png
--------------------------------------------------------------------------------
/src/files/宫崎骏.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/files/宫崎骏.jpg
--------------------------------------------------------------------------------
/src/assets/LOGO.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/LOGO.jpg
--------------------------------------------------------------------------------
/src/assets/hitbj.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/hitbj.png
--------------------------------------------------------------------------------
/src/assets/safe.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/safe.jpg
--------------------------------------------------------------------------------
/src/assets/中国移动1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/中国移动1.jpg
--------------------------------------------------------------------------------
/src/assets/公安部一所.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/公安部一所.jpg
--------------------------------------------------------------------------------
/src/assets/安天科技.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/安天科技.png
--------------------------------------------------------------------------------
/src/assets/清华大学.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/清华大学.png
--------------------------------------------------------------------------------
/src/assets/知道创宇.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/知道创宇.png
--------------------------------------------------------------------------------
/src/assets/腾讯计算机.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/腾讯计算机.png
--------------------------------------------------------------------------------
/src/assets/Bfirst3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/Bfirst3.jpg
--------------------------------------------------------------------------------
/src/assets/Bfirst5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/Bfirst5.jpg
--------------------------------------------------------------------------------
/src/assets/netlogo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/netlogo.jpg
--------------------------------------------------------------------------------
/src/assets/netlogo2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/netlogo2.jpg
--------------------------------------------------------------------------------
/src/assets/nssflogo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JasonYES/NetSafe_Frontend/HEAD/src/assets/nssflogo.jpg
--------------------------------------------------------------------------------
/theme/index.less:
--------------------------------------------------------------------------------
1 | @import '~iview/src/styles/index.less';
2 |
3 |
4 | @primary-color: #0c4060;
5 |
6 | @menu-dark-active-bg : #303030;
7 | @title-color : #303030;
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | var merge = require('webpack-merge')
2 | var prodEnv = require('./prod.env')
3 |
4 | module.exports = merge(prodEnv, {
5 | NODE_ENV: '"development"',
6 | // API_KEY: '"http//home/"'
7 | })
8 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | *.suo
11 | *.ntvs*
12 | *.njsproj
13 | *.sln
14 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserlist" field in package.json
6 | "autoprefixer": {}
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/global.js:
--------------------------------------------------------------------------------
1 | // global.folder = '/home/hitnslab/www/files/'
2 | // global.folder = '/home/hitnslab/www/files/'
3 | // global.folder = '/static/'
4 | global.folder = '/files/'
5 | // global.api = 'http://192.168.138.128:8000'
6 | // global.api = 'http://222.194.15.246:8000'
7 | // global.folder = 'file:///C|/Users/Jason/Desktop'
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 网络安全态势感知
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-runtime"],
12 | "env": {
13 | "test": {
14 | "presets": ["env", "stage-2"],
15 | "plugins": ["istanbul"]
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
13 |
14 |
23 |
--------------------------------------------------------------------------------
/src/svg/news.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svg/admin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svg/news1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svg/pics.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svg/logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
25 |
--------------------------------------------------------------------------------
/src/components/MemberPage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 参与单位
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/src/vuex/store.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import Vuex from 'vuex';
3 | import axios from 'axios'
4 |
5 | // import Vueditor from 'vueditor';
6 | // import 'vueditor/dist/style/vueditor.min.css'
7 |
8 | Vue.use(Vuex)
9 |
10 | let config = {
11 | toolbar: [
12 | 'removeFormat', 'undo', '|', 'elements', 'fontName', 'fontSize', 'foreColor', 'backColor'
13 | ],
14 | fontName: [
15 | {val: 'arial black'},
16 | {val: 'times new roman'},
17 | {val: 'Courier New'}
18 | ],
19 | fontSize: ['12px', '14px', '16px', '18px', '0.8rem', '1.0rem', '1.2rem', '1.5rem', '2.0rem'],
20 | uploadUrl: ''
21 | };
22 |
23 |
24 | // Vue.use(Vuex);
25 | // Vue.use(Vueditor, config);
26 |
27 | export default new Vuex.Store({
28 | state: {
29 | username: '',
30 | email: '',
31 | token: '',
32 | role: 0,
33 | user_id: null,
34 | },
35 | mutations: {
36 | Set_UserInfo(state, userinfo) {
37 | // console.log(userinfo.userinfo);
38 | state.email = userinfo.userinfo.email;
39 | state.username = userinfo.userinfo.name;
40 | state.user_id = userinfo.userinfo.user_id;
41 | state.role = userinfo.userinfo.role;
42 | },
43 | Set_UserID(state, user) {
44 | state.user_id = user.user_id;
45 | },
46 | },
47 | actions: {
48 | SET_USER_INFO({commit}, userinfo) {
49 | commit('Set_UserInfo', userinfo);
50 | },
51 | SET_USER_ID({commit}, user) {
52 | commit('Set_UserID', user);
53 | },
54 | },
55 | getters: {
56 | getUsername: (state) => state.username,
57 | getUserID: (state) => state.user_id,
58 | getUserToken: (state) => state.token,
59 | }
60 | })
61 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 | // see http://vuejs-templates.github.io/webpack for documentation.
2 | var path = require('path')
3 |
4 | module.exports = {
5 | build: {
6 | env: require('./prod.env'),
7 | index: path.resolve(__dirname, '../dist/index.html'),
8 | assetsRoot: path.resolve(__dirname, '../dist'),
9 | assetsSubDirectory: 'static',
10 | assetsPublicPath: '/',
11 | productionSourceMap: true,
12 | // Gzip off by default as many popular static hosts such as
13 | // Surge or Netlify already gzip all static assets for you.
14 | // Before setting to `true`, make sure to:
15 | // npm install --save-dev compression-webpack-plugin
16 | productionGzip: false,
17 | productionGzipExtensions: ['js', 'css'],
18 | // Run the build command with an extra argument to
19 | // View the bundle analyzer report after build finishes:
20 | // `npm run build --report`
21 | // Set to `true` or `false` to always turn it on or off
22 | bundleAnalyzerReport: process.env.npm_config_report
23 | },
24 | dev: {
25 | env: require('./dev.env'),
26 | port: 8090,
27 | autoOpenBrowser: true,
28 | assetsSubDirectory: 'static',
29 | assetsPublicPath: '/',
30 | proxyTable: {
31 | '/api': {
32 | target: 'http://192.168.138.128:3561',
33 | // target: 'http://222.194.15.246:8000',
34 | // target: 'http://localhost:8000',
35 | changeOrigin: true,
36 | pathRewrite: {
37 | '^/api': ''
38 | }
39 | }
40 | },
41 | // CSS Sourcemaps off by default because relative paths are "buggy"
42 | // with this option, according to the CSS-Loader README
43 | // (https://github.com/webpack/css-loader#sourcemaps)
44 | // In our experience, they generally work as expected,
45 | // just be aware of this issue when enabling this option.
46 | cssSourceMap: false
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/src/svg/new.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | // The Vue build version to load with the `import` command
2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
3 | import Vue from 'vue'
4 | import App from './App'
5 | import router from './router'
6 | import store from './vuex/store'
7 | // import 'babel-polyfill'
8 | import './global'
9 | // import VueQuillEditor from 'vue-quill-editor'
10 | // import Vuex from 'vuex';
11 | // import {createEditor} from 'vueditor';
12 | // import 'vueditor/dist/style/vueditor.min.css'
13 | import Es6Promise from 'es6-promise'
14 | Es6Promise.polyfill()
15 | import axios from 'axios';
16 |
17 | import iView from 'iview';
18 | import 'iview/dist/styles/iview.css';
19 | import '../theme/index.less';
20 |
21 | import CryptoJS from 'crypto-js';
22 | import Icon from 'vue-svg-icon/Icon.vue';
23 | import VueParticles from 'vue-particles'
24 | import VueLocalStorage from 'vue-ls';
25 |
26 | import VueHtml5Editor from 'vue-html5-editor'
27 |
28 | // var Promise = require('es6-promise').Promise;
29 |
30 | // Vue.use(Vuex);
31 |
32 | let options = {
33 | namespace: 'vuejs__'
34 | };
35 |
36 | // var VueQuillEditor = require('vue-quill-editor')
37 |
38 | Vue.use(VueLocalStorage, options);
39 | require('vue2-animate/dist/vue2-animate.min.css')
40 | var TWEEN = require('tween.js');
41 |
42 | Vue.config.productionTip = false
43 |
44 | Vue.use(iView);
45 | Vue.component('icon', Icon);
46 | Vue.use(VueParticles);
47 |
48 | // Vue.use(VueQuillEditor)
49 |
50 | Vue.prototype.$request = axios
51 | Vue.prototype.$CryptoJS = CryptoJS
52 |
53 | //Vueditor编辑器配置
54 | let textoptions = {
55 | name: "vue-html5-editor",
56 | visibleModules: [],
57 | };
58 | Vue.use(VueHtml5Editor,textoptions);
59 | // createEditor('#editorContainer', {
60 | // toolbar: [
61 | // 'removeFormat', 'undo', '|', 'elements', 'fontName', 'fontSize', 'foreColor', 'backColor',
62 | // ],
63 | // uploadUrl: '',
64 | // id: '',
65 | // classList: []
66 | // });
67 | // Vue.use(Vueditor, config);
68 | /* eslint-disable no-new */
69 | new Vue({
70 | el: '#app',
71 | router,
72 | store,
73 | template: '',
74 | components: {
75 | App
76 | // quillEditor,
77 | }
78 | })
79 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hitvep",
3 | "version": "1.0.0",
4 | "description": "A Vue.js project",
5 | "author": "Alecyrus",
6 | "private": true,
7 | "scripts": {
8 | "dev": "node build/dev-server.js",
9 | "start": "node build/dev-server.js",
10 | "build": "node build/build.js"
11 | },
12 | "dependencies": {
13 | "axios": "^0.16.2",
14 | "babel-cli": "^6.24.1",
15 | "crypto-js": "^3.1.9-1",
16 | "es6-promise": "^4.1.1",
17 | "iview": "^2.0.0-rc.18",
18 | "less": "^2.7.2",
19 | "less-loader": "^4.0.5",
20 | "tween.js": "^16.6.0",
21 | "vue": "^2.3.3",
22 | "vue-avatar": "^2.0.0",
23 | "vue-html5-editor": "^1.1.1",
24 | "vue-infinite-loading": "^2.1.3",
25 | "vue-ls": "^2.2.18",
26 | "vue-markdown": "^2.2.4",
27 | "vue-particles": "^1.0.9",
28 | "vue-router": "^2.3.1",
29 | "vue-svg-icon": "^1.2.9",
30 | "vue-waterfall": "^1.0.6",
31 | "vue2-animate": "^1.0.4",
32 | "vuex": "^2.3.1"
33 | },
34 | "devDependencies": {
35 | "autoprefixer": "^6.7.2",
36 | "babel-core": "^6.22.1",
37 | "babel-loader": "^6.2.10",
38 | "babel-plugin-transform-runtime": "^6.22.0",
39 | "babel-preset-env": "^1.3.2",
40 | "babel-preset-stage-2": "^6.22.0",
41 | "babel-register": "^6.22.0",
42 | "chalk": "^1.1.3",
43 | "connect-history-api-fallback": "^1.3.0",
44 | "copy-webpack-plugin": "^4.0.1",
45 | "css-loader": "^0.28.0",
46 | "eventsource-polyfill": "^0.9.6",
47 | "express": "^4.14.1",
48 | "extract-text-webpack-plugin": "^2.0.0",
49 | "file-loader": "^0.11.1",
50 | "friendly-errors-webpack-plugin": "^1.1.3",
51 | "html-webpack-plugin": "^2.28.0",
52 | "http-proxy-middleware": "^0.17.3",
53 | "webpack-bundle-analyzer": "^2.2.1",
54 | "semver": "^5.3.0",
55 | "shelljs": "^0.7.6",
56 | "opn": "^4.0.2",
57 | "optimize-css-assets-webpack-plugin": "^1.3.0",
58 | "ora": "^1.2.0",
59 | "rimraf": "^2.6.0",
60 | "url-loader": "^0.5.8",
61 | "vue-loader": "^12.1.0",
62 | "vue-style-loader": "^3.0.1",
63 | "vue-template-compiler": "^2.3.3",
64 | "webpack": "^2.6.1",
65 | "webpack-dev-middleware": "^1.10.0",
66 | "webpack-hot-middleware": "^2.18.0",
67 | "webpack-merge": "^4.1.0"
68 | },
69 | "engines": {
70 | "node": ">= 4.0.0",
71 | "npm": ">= 3.0.0"
72 | },
73 | "browserslist": [
74 | "> 1%",
75 | "last 2 versions",
76 | "not ie <= 8"
77 | ]
78 | }
79 |
--------------------------------------------------------------------------------
/src/svg/notice.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svg/member.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/form/SignUpForm.vue:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
19 |
79 |
80 |
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Router from 'vue-router'
3 | import FirstPage from '@/components/FirstPage'
4 | import Home from '@/components/Home'
5 | //五个主页面
6 | import NoticePage from '@/components/NoticePage'
7 | import NewsPage from '@/components/NewsPage'
8 | import PicPage from '@/components/PicPage'
9 | import DocPage from '@/components/DocPage'
10 | import ManagePage from '@/components/ManagePage'
11 | import MemberPage from '@/components/MemberPage'
12 |
13 | import PicDetail from '@/components/PicDetail'
14 | import NewsDetail from '@/components/NewsDetail'
15 | //管理员页下属
16 | import NewNews from'@/components/manager/NewNews'
17 | import NewNotice from'@/components/manager/NewNotice'
18 | import NewPic from'@/components/manager/NewPic'
19 | import NewDoc from'@/components/manager/NewDoc'
20 |
21 | import ManNotice from'@/components/manager/ManNotice'
22 | import ManNews from'@/components/manager/ManNews'
23 | import ManPic from'@/components/manager/ManPic'
24 | import ManDoc from'@/components/manager/ManDoc'
25 |
26 | import User from'@/components/manager/User'
27 | import UserLevel from'@/components/manager/UserLevel'
28 | import UserProject from'@/components/manager/UserProject'
29 | import UserReg from'@/components/manager/UserReg'
30 | //无用
31 | // import Maincourse from '@/components/MainCourse'
32 | // import Coursedetail from '@/components/CourseDetail'
33 | Vue.use(Router)
34 |
35 |
36 | export default new Router({
37 | mode: 'history',
38 | routes: [
39 | // {
40 | // path: '/',
41 | // component: Login,
42 | // },
43 | {
44 | // path: '/home/:username',
45 | path: '/',
46 | component: Home,
47 | children: [
48 | {
49 | path: '/',
50 | component: FirstPage,
51 | },
52 | {
53 | path: 'noticepage',
54 | component: NoticePage,
55 | },
56 | {
57 | path: 'newspage',
58 | component: NewsPage,
59 | },
60 | {
61 | path: 'picpage',
62 | component: PicPage,
63 | },
64 | {
65 | path: 'docpage',
66 | component: DocPage,
67 | },
68 | {
69 | path: 'memberpage',
70 | component: MemberPage,
71 | },
72 | {
73 | path: 'newsdetail',
74 | component: NewsDetail,
75 | },
76 | {
77 | path: 'picdetail',
78 | component: PicDetail,
79 | },
80 | {
81 | path: ':username/managepage',
82 | component: ManagePage,
83 | children: [
84 | {
85 | path: 'newnotice',
86 | component: NewNotice,
87 | },
88 | {
89 | path: 'newnews',
90 | component: NewNews,
91 | },
92 | {
93 | path: 'newdoc',
94 | component: NewDoc,
95 | },
96 | {
97 | path: 'newpic',
98 | component: NewPic,
99 | },
100 | {
101 | path: 'mannotice',
102 | component: ManNotice,
103 | },
104 | {
105 | path: 'mannews',
106 | component: ManNews,
107 | },
108 | {
109 | path: 'mandoc',
110 | component: ManDoc,
111 | },
112 | {
113 | path: 'manpic',
114 | component: ManPic,
115 | },
116 | {
117 | path: 'user',
118 | component: User,
119 | },
120 | {
121 | path: 'userlevel',
122 | component: UserLevel,
123 | },
124 | {
125 | path: 'userproject',
126 | component: UserProject,
127 | },
128 | {
129 | path: 'userreg',
130 | component: UserReg,
131 | },
132 | ]
133 | },
134 | ]
135 | }
136 | ]
137 | })
138 |
139 |
140 |
141 |
--------------------------------------------------------------------------------
/src/components/ManagePage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | 管理员面板
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
136 |
137 |
138 |
--------------------------------------------------------------------------------
/src/components/PicDetail.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | 上级菜单
16 | 正文
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
{{news.title}}
26 |
{{news.author}} · {{news.date}}
27 |
28 |
29 |
30 |
31 |
32 |
![]()
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | 相关内容
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
61 |
62 |
63 |
64 |
65 |
66 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
169 |
170 |
--------------------------------------------------------------------------------
/src/components/NewsDetail.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | 上级菜单
16 | 正文
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
{{news.title}}
26 |
{{news.author}} · {{news.date}}
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
![]()
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 | 相关新闻
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
64 |
65 |
66 |
67 |
68 |
69 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
182 |
183 |
--------------------------------------------------------------------------------
/src/components/manager/ManNotice.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | {{news.date}}
13 |
14 |
15 |
16 | {{news.title}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
42 |
46 |
47 |
{{notice.title}}
48 |
{{notice.date}} {{notice.author}}
49 |
50 |
51 |
52 |
53 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
171 |
172 |
--------------------------------------------------------------------------------
/src/components/manager/ManNews.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | {{news.date}}
13 |
14 |
15 |
16 | {{news.title}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
43 |
47 |
48 |
{{notice.title}}
49 |
{{notice.date}} {{notice.author}}
50 |
51 |
52 |
53 |
54 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
172 |
173 |
--------------------------------------------------------------------------------
/src/components/manager/ManPic.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | {{news.date}}
13 |
14 |
15 |
16 | {{news.title}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
42 |
46 |
47 |
{{notice.title}}
48 |
{{notice.date}} {{notice.author}}
49 |
50 |
51 |
52 |
53 |
![]()
54 |
55 |
56 |
57 |
58 |
59 |
60 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
191 |
192 |
--------------------------------------------------------------------------------
/src/components/manager/UserReg.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
9 |
10 |
18 |
19 |
23 | 亚马逊像苹果一样秘密组建医疗保健团队TechWeb
24 | 自定义宽度,单位 px,默认 520px。
25 | 自定义宽度,单位 px,默认 520px。
26 | 自定义宽度,单位 px,默认 520px。
27 | 对话框的宽度是响应式的,当屏幕尺寸小于 768px 时,宽度会变为自动auto。
28 |
29 |
30 |
31 |
52 |
55 |
60 |
61 |
62 |
63 |
64 |
191 |
192 |
--------------------------------------------------------------------------------
/src/components/DocPage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | 文档资料
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | {{news.date}}
44 |
47 |
48 |
49 |
50 |
51 |
52 |
{{notice.title}}
53 |
{{notice.date}} {{notice.author}}
54 |
55 |
56 |
57 |
58 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
243 |
322 |
--------------------------------------------------------------------------------
/src/components/manager/ManDoc.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | {{news.date}}
13 |
14 |
15 |
16 | {{news.title}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
42 |
46 |
47 |
{{notice.title}}
48 |
{{notice.date}} {{notice.author}}
49 |
50 |
51 |
52 |
53 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
212 |
213 |
--------------------------------------------------------------------------------
/src/components/NoticePage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
{{notice.title}}
12 |
{{notice.date}} {{notice.author}}
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 | 通知公告
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 | {{notice.date}}
63 |
64 |
65 |
66 |
67 |
68 |
69 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
256 |
257 |
--------------------------------------------------------------------------------
/src/components/NewsPage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | 项目资讯
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
{{news.date.substr(0, 4)}}
49 | {{news.date.substr(5, 10)}}
50 |
51 |
52 |
53 |
67 |
68 |
69 |
72 | {{news.intro}}
73 |
74 |
75 |
76 |
77 | {{news.author}}
78 |
79 |
80 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
240 |
326 |
--------------------------------------------------------------------------------
/src/components/manager/NewNotice.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 通知信息
6 |
30 |
31 |
32 |
33 |
39 |
40 | 通知正文
41 | 请在以下框中输入正文。如有排版需要,建议在Word中排版后复制到框中。
42 | 注意:下框仅支持纯文本,请勿在其中加入图片。
43 |
44 |
45 |
46 |
47 |
48 |
52 |
53 |
54 | 效果预览
55 |
56 |
57 | {{formItem.title}}
58 |
59 |
60 |
61 |
62 |
63 |
64 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
214 |
215 |
216 |
295 |
296 |
--------------------------------------------------------------------------------
/src/components/manager/UserProject.vue:
--------------------------------------------------------------------------------
1 |
2 |
73 |
74 |
75 |
244 |
245 |
--------------------------------------------------------------------------------
/src/components/manager/NewPic.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 信息简介
6 |
30 |
31 |
32 |
33 |
34 | 图片选择
35 |
36 |
37 |
45 |
46 |
47 |
点击或将文件拖拽到这里上传,可多选
48 |
49 |
50 |
51 |
52 |
53 |
57 |
58 |
59 | 效果预览
60 |
61 |
62 | {{formItem.title}}
63 |
64 |
![]()
65 |
66 |
67 |
68 |
69 |
70 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
228 |
229 |
230 |
309 |
310 |
--------------------------------------------------------------------------------
/src/components/manager/UserLevel.vue:
--------------------------------------------------------------------------------
1 |
2 |
73 |
74 |
75 |
262 |
263 |
--------------------------------------------------------------------------------
/src/components/manager/NewNews.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 资讯信息
6 |
30 |
31 |
32 |
33 |
34 | 资讯正文
35 | 请在以下框中输入正文。如有排版需要,建议在Word中排版后复制到框中。
36 | 注意:下框仅支持纯文本,请勿在其中加入图片。
37 |
38 |
39 |
40 |
41 | 资讯图片
42 |
43 |
44 |
53 |
54 |
55 |
点击或将图片拖拽到此处上传,可多选(.jpg .png)
56 |
57 |
58 |
59 |
60 |
61 |
65 |
66 |
67 | 效果预览
68 |
69 |
70 | {{formItem.title}}
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
![]()
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
249 |
250 |
251 |
330 |
331 |
--------------------------------------------------------------------------------
/src/components/Home.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
10 |
11 |
12 |
29 |
32 |
33 |
34 |
35 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 | Copyright © 2017
158 |
HITNSLAB
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
296 |
297 |
298 |
--------------------------------------------------------------------------------