diff --git a/build/utils.js b/build/utils.js index e534fb0..a55c3e9 100644 --- a/build/utils.js +++ b/build/utils.js @@ -58,7 +58,12 @@ exports.cssLoaders = function (options) { return { css: generateLoaders(), postcss: generateLoaders(), - less: generateLoaders('less'), + less: generateLoaders('less').concat({ + loader: 'sass-resources-loader', + options: { + resources: path.resolve(__dirname, '../src/style/common.less') + } + }), sass: generateLoaders('sass', { indentedSyntax: true }), scss: generateLoaders('sass'), stylus: generateLoaders('stylus'), diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js index 0e94da6..abc6ea5 100644 --- a/build/webpack.base.conf.js +++ b/build/webpack.base.conf.js @@ -41,10 +41,6 @@ module.exports = { module: { rules: [ ...(config.dev.useEslint ? [createLintingRule()] : []), - { - test: /\.less$/, - loader: "style-loader!css-loader!less-loader" - }, { test: /\.vue$/, loader: 'vue-loader', diff --git a/package.json b/package.json index 3b8892b..2d43fb7 100644 --- a/package.json +++ b/package.json @@ -16,8 +16,8 @@ "dependencies": { "axios": "^0.20.0", "element-ui": "^2.13.2", - "less": "3.9", - "less-loader": "5.0.0", + "less": "^3.8.1", + "less-loader": "^4.1.0", "svg-sprite-loader": "^5.0.0", "vue": "^2.5.2", "vue-router": "^3.0.1" @@ -69,6 +69,7 @@ "postcss-url": "^7.2.1", "prettier": "^1.12.1", "rimraf": "^2.6.0", + "sass-resources-loader": "^2.1.1", "selenium-server": "^3.0.1", "semver": "^5.3.0", "shelljs": "^0.7.6", diff --git a/src/components/kpi-layout/AppMain.vue b/src/components/kpi-layout/AppMain.vue index e6fcfd3..b1e2f27 100644 --- a/src/components/kpi-layout/AppMain.vue +++ b/src/components/kpi-layout/AppMain.vue @@ -24,10 +24,8 @@ export default { } - diff --git a/src/main.js b/src/main.js index 4c01f12..d2c5e15 100644 --- a/src/main.js +++ b/src/main.js @@ -3,19 +3,11 @@ import Vue from 'vue' import App from './App' import router from './router' -import { - Button, - MessageBox, - Message -} from 'element-ui' -import './style/public.css' +import './utils/elementConfig' +import './style/index.less' import '@/icons' -Vue.use(Button) -Vue.prototype.$message = Message -Vue.prototype.$confirm = MessageBox.confirm -Vue.prototype.$alert = MessageBox.alert Vue.config.productionTip = false /* eslint-disable no-new */ new Vue({ diff --git a/src/style/common.less b/src/style/common.less new file mode 100644 index 0000000..745818f --- /dev/null +++ b/src/style/common.less @@ -0,0 +1 @@ +@borderColor: #ebebeb; diff --git a/src/style/index.less b/src/style/index.less new file mode 100644 index 0000000..0cdab88 --- /dev/null +++ b/src/style/index.less @@ -0,0 +1 @@ +@import './public.less'; \ No newline at end of file diff --git a/src/style/public.css b/src/style/public.less similarity index 74% rename from src/style/public.css rename to src/style/public.less index 993ccd1..3ffc5a7 100644 --- a/src/style/public.css +++ b/src/style/public.less @@ -34,7 +34,6 @@ h1, h2, h3, h4, h5, h6 { a{ text-decoration:none;} a:hover img{ border:none;} -a:active{noOutline:expression(this.onFocus=this.blur());} /*清除浮动*/ .clearfix:after { content: "."; @@ -48,8 +47,3 @@ a:active{noOutline:expression(this.onFocus=this.blur());} * html .clearfix { height: 1%;} .clearfix {display: block;} /* End hide from IE-mac */ - -/*png css hack for ie6*/ -*html img.png{ - _background-image: expression(this.runtimeStyle.backgroundImage = "none",this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.src + "', sizingMethod='image')",this.src = "http://i0.itc.cn/20101019/848_0a785a7b_1118_4825_85dc_e8696988c94b_0.gif"); -} \ No newline at end of file diff --git a/src/utils/elementConfig.js b/src/utils/elementConfig.js new file mode 100644 index 0000000..70a9470 --- /dev/null +++ b/src/utils/elementConfig.js @@ -0,0 +1,41 @@ +import Vue from 'vue' +import { + Button, + MessageBox, + Message, + Table, + TableColumn, + Form, + FormItem, + Input, + Select, + Option, + RadioGroup, + DatePicker, + CheckboxGroup, + Switch, + TimePicker, + Col, + Checkbox, + Radio +} from 'element-ui' + +Vue.prototype.$message = Message +Vue.prototype.$confirm = MessageBox.confirm +Vue.prototype.$alert = MessageBox.alert +Vue.use(DatePicker) +Vue.use(Select) +Vue.use(RadioGroup) +Vue.use(Option) +Vue.use(Input) +Vue.use(Form) +Vue.use(FormItem) +Vue.use(Button) +Vue.use(Table) +Vue.use(TableColumn) +Vue.use(CheckboxGroup) +Vue.use(Switch) +Vue.use(TimePicker) +Vue.use(Col) +Vue.use(Checkbox) +Vue.use(Radio) diff --git a/src/utils/request.js b/src/utils/request.js index 0e522b1..87b93aa 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -23,64 +23,63 @@ service.interceptors.request.use(config => { // } return config }, error => { - console.log(error) - Promise.reject(error) + console.log(error) + Promise.reject(error) }) // 响应拦截器 service.interceptors.response.use(res => { - // 未设置状态码则默认成功状态 - const code = res.data.code || 200; - // 获取错误信息 - const msg = errorCode[code] || res.data.msg || errorCode['default'] - if (code === 401) { - // MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', { - // confirmButtonText: '重新登录', - // cancelButtonText: '取消', - // type: 'warning' - // } - // ).then(() => { - // store.dispatch('LogOut').then(() => { - // location.href = '/market-ui/login'; - // }) - // }) - } else if (code === 500) { - Message({ - message: msg, - type: 'error' - }) - return Promise.reject(new Error(msg)) - } else if (code !== 200) { - Notification.error({ - title: msg - }) - return Promise.reject('error') - } else { - if(res.config.responseType === 'blob'){ - return res - } - return res.data - } - }, - error => { - console.log('err' + error) - let { message } = error; - if (message == "Network Error") { - message = "后端接口连接异常"; - } - else if (message.includes("timeout")) { - message = "系统接口请求超时"; - } - else if (message.includes("Request failed with status code")) { - message = "系统接口" + message.substr(message.length - 3) + "异常"; - } + // 未设置状态码则默认成功状态 + const code = res.data.code || 200 + // 获取错误信息 + const msg = errorCode[code] || res.data.msg || errorCode['default'] + if (code === 401) { + // MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', { + // confirmButtonText: '重新登录', + // cancelButtonText: '取消', + // type: 'warning' + // } + // ).then(() => { + // store.dispatch('LogOut').then(() => { + // location.href = '/market-ui/login'; + // }) + // }) + } else if (code === 500) { Message({ - message: message, - type: 'error', - duration: 5 * 1000 + message: msg, + type: 'error' }) - return Promise.reject(error) + return Promise.reject(new Error(msg)) + } else if (code !== 200) { + Notification.error({ + title: msg + }) + // eslint-disable-next-line prefer-promise-reject-errors + return Promise.reject('error') + } else { + if (res.config.responseType === 'blob') { + return res + } + return res.data } +}, +error => { + console.log('err' + error) + let { message } = error + if (message == 'Network Error') { + message = '后端接口连接异常' + } else if (message.includes('timeout')) { + message = '系统接口请求超时' + } else if (message.includes('Request failed with status code')) { + message = '系统接口' + message.substr(message.length - 3) + '异常' + } + Message({ + message: message, + type: 'error', + duration: 5 * 1000 + }) + return Promise.reject(error) +} ) export default service diff --git a/src/views/kpi/assessment/components/popup.vue b/src/views/kpi/assessment/components/popup.vue new file mode 100644 index 0000000..5bfd3a5 --- /dev/null +++ b/src/views/kpi/assessment/components/popup.vue @@ -0,0 +1,140 @@ + + + + + diff --git a/src/views/kpi/assessment/index.vue b/src/views/kpi/assessment/index.vue index 898ac7a..3b4bd41 100644 --- a/src/views/kpi/assessment/index.vue +++ b/src/views/kpi/assessment/index.vue @@ -1,25 +1,151 @@ - +