Commit 1117fba6 by caoyanzhi

init commit

parent 9f4d0bb9
> 1%
last 2 versions
[*.{js,jsx,ts,tsx,vue}]
indent_style = space
indent_size = 2
trim_trailing_whitespace = true
insert_final_newline = true
!/src
/src/images
/dist/
/*.js
// https://eslint.org/docs/user-guide/configuring
module.exports = {
root: true,
parserOptions: {
parser: "babel-eslint"
},
env: {
browser: true
},
extends: [
// https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention
// consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.
// "standard",
"plugin:vue/essential",
// https://github.com/standard/standard/blob/master/docs/RULES-en.md
// "plugin:prettier/recommended"
],
// required to lint *.vue files
plugins: ["vue"],
// add your custom rules here
rules: {
// "prettier/prettier": "error",
// allow async-await
"generator-star-spacing": "off",
// "no-console": process.env.NODE_ENV === "production" ? 2 : 0,
"no-alert": process.env.NODE_ENV === "production" ? 2 : 0, //禁止使用alert confirm prompt
"no-debugger": process.env.NODE_ENV === "production" ? 2 : 0,
// --------------------静态检测-----------------------------
/**
* 静态检测:
* 以下基本位能够帮助发现代码错误的规则
* */
// 禁止与负零进行比较
"no-compare-neg-zero": 2,
// 禁止将常量作为 if 或三元表达式的测试条件,比如 if (true), let foo = 0 ? 'foo' : 'bar'
"no-constant-condition": [
2,
{
checkLoops: false
}
],
// 禁止在函数参数中出现重复名称的参数 【辅助检测】
"no-dupe-args": 2,
// 禁止在对象字面量中出现重复名称的键名 【辅助检测】
"no-dupe-keys": 2,
// 禁止出现空代码块 【可读性差】
"no-empty": [
2,
{
"allowEmptyCatch": true
}
],
// 禁止将 catch 的第一个参数 error 重新赋值 【重新赋值,error将没有意义】
"no-ex-assign": 2,
// @fixable 禁止函数表达式中出现多余的括号,比如 let foo = (function () { return 1 }) 【一般不会这么写,可读性差】
"no-extra-parens": [2, "functions"],
// 禁止将一个函数申明重新赋值,如:
// function foo() {}
// foo = bar [静态检测:无意义]
"no-func-assign": 2,
// 禁止在 if 内出现函数申明或使用 var 定义变量
"no-inner-declarations": [2, "both"],
// 禁止使用特殊空白符(比如全角空格),除非是出现在字符串、正则表达式或模版字符串中
"no-irregular-whitespace": [
2,
{
skipStrings: true,
skipComments: false,
skipRegExps: true,
skipTemplates: true
}
],
// typeof 表达式比较的对象必须是 'undefined', 'object', 'boolean', 'number', 'string', 'function' 或 'symbol'
"valid-typeof": 2,
// -----------------------------------最佳实践----------------------------------------------
/**
* 最佳实践
* 这些规则通过一些最佳实践帮助你避免问题
*/
// 禁止函数的循环复杂度超过 20,【https://en.wikipedia.org/wiki/Cyclomatic_complexity】
complexity: [
2,
{
max: 200
}
],
// 不允许有空函数,除非是将一个空函数设置为某个项的默认值 【否则空函数并没有实际意义】
"no-empty-function": [
2,
{
allow: ["functions", "arrowFunctions"]
}
],
// 禁止修改原生对象 【例如 Array.protype.xxx=funcion(){},很容易出问题,比如for in 循环数组 会出问题】
"no-extend-native": 2,
// @fixable 表示小数时,禁止省略 0,比如 .5 【可读性】
"no-floating-decimal": 2,
// 禁止直接 new 一个类而不赋值 【 那么除了占用内存还有什么意义呢? @off vue语法糖大量存在此类语义 先手动关闭】
"no-new": 0,
// 禁止使用 new Function,比如 let x = new Function("a", "b", "return a + b"); 【可读性差】
"no-new-func": 2,
// 禁止将自己赋值给自己 [规则帮助检测]
"no-self-assign": 2,
// 禁止将自己与自己比较 [规则帮助检测]
"no-self-compare": 2,
// @fixable 立即执行的函数必须符合如下格式 (function () { alert('Hello') })() 【立即函数写法很多,这个是最易读最标准的】
"wrap-iife": [
2,
"inside",
{
functionPrototypeMethods: true
}
],
// 禁止使用保留字作为变量名 [规则帮助检测保留字,通常ide难以发现,生产会出现问题]
"no-shadow-restricted-names": 2,
// 禁止使用未定义的变量
"no-undef": [
2,
{
typeof: false
}
],
// 定义过的变量必须使用 【正规应该是这样的,具体可以大家讨论】
"no-unused-vars": [
2,
{
vars: "all",
args: "none",
caughtErrors: "none",
ignoreRestSiblings: true
}
],
// 变量必须先定义后使用 【ps:涉及到es6存在不允许变量提升的问题,以免引起意想不到的错误,具体可以大家讨论】
"no-use-before-define": [
2,
{
functions: false,
classes: false,
variables: false
}
],
// ----------------------------------------------------代码规范----------------------------------------------------------
/**
* 代码规范
* 有关【空格】、【链式换行】、【缩进】、【=、{}、()、首位空格】规范没有添加,怕大家一时间接受不了,目前所挑选的规则都是:保障我们的代码可读性、可维护性的
* */
// 变量名必须是 camelcase 驼峰风格的
// @off 【涉及到 很多 api 或文件名可能都不是 camelcase 先关闭】
camelcase: 0,
// @fixable 禁止在行首写逗号
"comma-style": [2, "last"],
// @fixable 一个缩进必须用两个空格替代
// @off 【不限制大家,为了关闭eslint默认值,所以手动关闭,off不可去掉】 讨论
indent: [2, 2,{ "SwitchCase": 1 }],
//@off 手动关闭//前面需要回车的规则 注释
"spaced-comment": 0,
//@off 手动关闭: 禁用行尾空白
"no-trailing-spaces": 2,
//@off 手动关闭: 不允许多行回车
"no-multiple-empty-lines": 1,
//@off 手动关闭: 逗号前必须加空格
"comma-spacing": 0,
//@off 手动关闭: 冒号后必须加空格
"key-spacing": 1,
// @fixable 结尾禁止使用分号
//@off [vue官方推荐无分号,不知道大家是否可以接受?先手动off掉] 讨论
// "semi": [2,"never"],
semi: 0,
// 代码块嵌套的深度禁止超过 5 层
"max-depth": [1, 20],
// 回调函数嵌套禁止超过 4 层,多了请用 async await 替代
"max-nested-callbacks": [2, 8],
// 函数的参数禁止超过 7 个
"max-params": [2, 7],
// new 后面的类名必须首字母大写 【面向对象编程原则】
"new-cap": [
2,
{
newIsCap: true,
capIsNew: false,
properties: true
}
],
// @fixable new 后面的类必须有小括号 【没有小括号、指针指过去没有意义】
"new-parens": 2,
// @fixable 禁止属性前有空格,比如 foo. bar() 【可读性太差,一般也没人这么写】
"no-whitespace-before-property": 2,
// @fixable 禁止 if 后面不加大括号而写两行代码 eg: if(a>b) a=0 b=0
"nonblock-statement-body-position": [
2,
"beside",
{ overrides: { while: "below" } }
],
// 禁止变量申明时用逗号一次申明多个 eg: let a,b,c,d,e,f,g = [] 【debug并不好审查、并且没办法单独写注释】
"one-var": [2, "never"],
// @fixable 【变量申明必须每行一个,同上】
"one-var-declaration-per-line": [2, "always"],
//是否使用全等
eqeqeq: 0,
//this别名
"consistent-this": [2, "that"],
// -----------------------------ECMAScript 6-------------------------------------
/**
* ECMAScript 6
* 这些规则与 ES6 有关 【请大家 尝试使用正确使用const和let代替var,以后大家熟悉之后可能会提升规则】
* */
// 禁止对定义过的 class 重新赋值
"no-class-assign": 2,
// @fixable 禁止出现难以理解的箭头函数,比如 let x = a => 1 ? 2 : 3
"no-confusing-arrow": [2, { allowParens: true }],
// 禁止对使用 const 定义的常量重新赋值
"no-const-assign": 2,
// 禁止重复定义类
"no-dupe-class-members": 2,
// 禁止重复 import 模块
"no-duplicate-imports": 2,
//@off 以后可能会开启 禁止 var
"no-var": 0,
// ---------------------------------被关闭的规则-----------------------
// parseInt必须指定第二个参数 parseInt("071",10);
radix: 0,
//强制使用一致的反勾号、双引号或单引号 (quotes) 关闭
quotes: [1, "single"],
//要求或禁止函数圆括号之前有一个空格
"space-before-function-paren": [0, "always"],
//禁止或强制圆括号内的空格
"space-in-parens": [0, "never"],
//关键字后面是否要空一格
"space-after-keywords": [0, "always"],
// 要求或禁止在函数标识符和其调用之间有空格
"func-call-spacing": [0, "never"]
}
};
.DS_Store
node_modules
dm-layout
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
package-lock.json
yarn.lock
index-1.js
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
module.exports = {
presets: [
'@vue/app'
]
}
{
"name": "damolish",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"dev": "npm run serve",
"start": "npm run serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^0.19.0",
"clipboard": "^2.0.4",
"core-js": "^2.6.5",
"element-ui": "^2.10.0",
"vue": "^2.6.10",
"vue-router": "^3.0.3",
"vuex": "^3.0.1"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.8.0",
"@vue/cli-plugin-eslint": "^3.8.0",
"@vue/cli-service": "^3.8.0",
"@vue/eslint-config-standard": "^4.0.0",
"babel-eslint": "^10.0.1",
"eslint": "^5.16.0",
"eslint-plugin-vue": "^5.0.0",
"less": "^3.9.0",
"less-loader": "^5.0.0",
"lint-staged": "^8.1.5",
"node-sass": "^4.9.0",
"qs": "^6.7.0",
"sass-loader": "^7.1.0",
"stylus": "^0.54.5",
"stylus-loader": "^3.0.2",
"vue-template-compiler": "^2.6.10"
},
"gitHooks": {
"pre-commit": "lint-staged"
},
"lint-staged": {
"*.{js,vue}": [
"vue-cli-service lint",
"git add"
]
}
}
module.exports = {
plugins: {
autoprefixer: {}
}
}
<!DOCTYPE html>
<html lang="cn">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<link rel="stylesheet" type="text/css" href="//web-1251519181.file.myqcloud.com/custom-element/custom-element.1.0.39.css" />
<link rel="stylesheet" type="text/css" href="<%= BASE_URL %>static/fonts/iconfont.css">
<title>达摩网络GIC——连锁零售商业互联网+,终极解决方案</title>
</head>
<body class="damolish">
<noscript>
<strong>We're sorry but damolish doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
<script src="//web-1251519181.file.myqcloud.com/lib-4.0/vue/2.6.10/vue.min.js"></script>
<script src="//web-1251519181.file.myqcloud.com/lib-4.0/vuex/3.0.1/vuex.js"></script>
<script src="//web-1251519181.file.myqcloud.com/lib-4.0/axios/0.19.0/axios.min.js"></script>
<script src="//web-1251519181.file.myqcloud.com/components/layout.1.2.41.js"></script>
</body>
</html>
/* Logo 字体 */
@font-face {
font-family: "iconfont logo";
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
}
.logo {
font-family: "iconfont logo";
font-size: 160px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* tabs */
.nav-tabs {
position: relative;
}
.nav-tabs .nav-more {
position: absolute;
right: 0;
bottom: 0;
height: 42px;
line-height: 42px;
color: #666;
}
#tabs {
border-bottom: 1px solid #eee;
}
#tabs li {
cursor: pointer;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 16px;
border-bottom: 2px solid transparent;
position: relative;
z-index: 1;
margin-bottom: -1px;
color: #666;
}
#tabs .active {
border-bottom-color: #f00;
color: #222;
}
.tab-container .content {
display: none;
}
/* 页面布局 */
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main .logo {
color: #333;
text-align: left;
margin-bottom: 30px;
line-height: 1;
height: 110px;
margin-top: -50px;
overflow: hidden;
*zoom: 1;
}
.main .logo a {
font-size: 160px;
color: #333;
}
.helps {
margin-top: 40px;
}
.helps pre {
padding: 20px;
margin: 10px 0;
border: solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists {
width: 100% !important;
overflow: hidden;
*zoom: 1;
}
.icon_lists li {
width: 100px;
margin-bottom: 10px;
margin-right: 20px;
text-align: center;
list-style: none !important;
cursor: default;
}
.icon_lists li .code-name {
line-height: 1.2;
}
.icon_lists .icon {
display: block;
height: 100px;
line-height: 100px;
font-size: 42px;
margin: 10px auto;
color: #333;
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
-moz-transition: font-size 0.25s linear, width 0.25s linear;
transition: font-size 0.25s linear, width 0.25s linear;
}
.icon_lists .icon:hover {
font-size: 100px;
}
.icon_lists .svg-icon {
/* 通过设置 font-size 来改变图标大小 */
width: 1em;
/* 图标和文字相邻时,垂直对齐 */
vertical-align: -0.15em;
/* 通过设置 color 来改变 SVG 的颜色/fill */
fill: currentColor;
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
normalize.css 中也包含这行 */
overflow: hidden;
}
.icon_lists li .name,
.icon_lists li .code-name {
color: #666;
}
/* markdown 样式 */
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p {
margin: 1em 0;
}
.markdown>p,
.markdown>blockquote,
.markdown>.highlight,
.markdown>ol,
.markdown>ul {
width: 80%;
}
.markdown ul>li {
list-style: circle;
}
.markdown>ul li,
.markdown blockquote ul>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown>ul li p,
.markdown>ol li p {
margin: 0.6em 0;
}
.markdown ol>li {
list-style: decimal;
}
.markdown>ol li,
.markdown blockquote ol>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown>table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown>table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown>table th,
.markdown>table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown>table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown>br,
.markdown>p>br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
/* 代码高亮 */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*="language-"],
pre[class*="language-"] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*="language-"]::-moz-selection,
pre[class*="language-"] ::-moz-selection,
code[class*="language-"]::-moz-selection,
code[class*="language-"] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*="language-"]::selection,
pre[class*="language-"] ::selection,
code[class*="language-"]::selection,
code[class*="language-"] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*="language-"] {
padding: 1em;
margin: .5em 0;
overflow: auto;
}
:not(pre)>code[class*="language-"],
pre[class*="language-"] {
background: #f5f2f0;
}
/* Inline code */
:not(pre)>code[class*="language-"] {
padding: .1em;
border-radius: .3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.namespace {
opacity: .7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
background: hsla(0, 0%, 100%, .5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function,
.token.class-name {
color: #DD4A68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}
{
"id": "1434755",
"name": "GIC4.0 营销",
"font_family": "iconfont",
"css_prefix_text": "icon-",
"description": "",
"glyphs": [
{
"icon_id": "2110662",
"name": "二维码",
"font_class": "erweima",
"unicode": "e62f",
"unicode_decimal": 58927
},
{
"icon_id": "3964103",
"name": "免费福利的副本-01",
"font_class": "mianfeifulidefuben-",
"unicode": "e724",
"unicode_decimal": 59172
},
{
"icon_id": "13265224",
"name": "通知公告",
"font_class": "tongzhigonggao",
"unicode": "e659",
"unicode_decimal": 58969
},
{
"icon_id": "8866671",
"name": "已删除",
"font_class": "yishanchu",
"unicode": "e6af",
"unicode_decimal": 59055
},
{
"icon_id": "4778433",
"name": "卡券展架",
"font_class": "qiaquan-",
"unicode": "e6ba",
"unicode_decimal": 59066
},
{
"icon_id": "12797879",
"name": "成就奖章",
"font_class": "chengjiujiangzhang",
"unicode": "ea42",
"unicode_decimal": 59970
},
{
"icon_id": "12797876",
"name": "会员任务",
"font_class": "huiyuanrenwu",
"unicode": "ea41",
"unicode_decimal": 59969
},
{
"icon_id": "6817288",
"name": "小程序",
"font_class": "xiaochengxu",
"unicode": "e607",
"unicode_decimal": 58887
},
{
"icon_id": "12136395",
"name": "同步记录",
"font_class": "tongbujilu",
"unicode": "e9c4",
"unicode_decimal": 59844
},
{
"icon_id": "12136294",
"name": "卡券投放",
"font_class": "kaquantoufang",
"unicode": "e9c3",
"unicode_decimal": 59843
},
{
"icon_id": "3978703",
"name": "列表",
"font_class": "liebiao",
"unicode": "e654",
"unicode_decimal": 58964
},
{
"icon_id": "10480689",
"name": "卡片",
"font_class": "kapian",
"unicode": "e606",
"unicode_decimal": 58886
},
{
"icon_id": "9448499",
"name": "排序",
"font_class": "paixu",
"unicode": "e887",
"unicode_decimal": 59527
},
{
"icon_id": "11636491",
"name": "刷新",
"font_class": "shuaxin",
"unicode": "e962",
"unicode_decimal": 59746
},
{
"icon_id": "876514",
"name": "上传",
"font_class": "shangchuan",
"unicode": "e667",
"unicode_decimal": 58983
},
{
"icon_id": "6927557",
"name": "zhankai-2",
"font_class": "zhankai-",
"unicode": "e793",
"unicode_decimal": 59283
},
{
"icon_id": "6929749",
"name": "zhongzhi",
"font_class": "zhongzhi",
"unicode": "e794",
"unicode_decimal": 59284
},
{
"icon_id": "6790692",
"name": "背景音乐音乐",
"font_class": "beijingyinleyinle",
"unicode": "e625",
"unicode_decimal": 58917
},
{
"icon_id": "11531059",
"name": "暂停",
"font_class": "shitinghui1",
"unicode": "e954",
"unicode_decimal": 59732
},
{
"icon_id": "11531045",
"name": "试听",
"font_class": "shitinghui",
"unicode": "e953",
"unicode_decimal": 59731
},
{
"icon_id": "11528118",
"name": "游戏列表",
"font_class": "gerenzhongxin_wodeyouxi-xuanzhong",
"unicode": "e952",
"unicode_decimal": 59730
},
{
"icon_id": "11518592",
"name": "录音播放",
"font_class": "luyinbofang",
"unicode": "e951",
"unicode_decimal": 59729
},
{
"icon_id": "8262371",
"name": "上移",
"font_class": "shangyi",
"unicode": "e69d",
"unicode_decimal": 59037
},
{
"icon_id": "8262372",
"name": "下移",
"font_class": "xiayi",
"unicode": "e69e",
"unicode_decimal": 59038
},
{
"icon_id": "11498968",
"name": "添加",
"font_class": "tianjia",
"unicode": "e950",
"unicode_decimal": 59728
},
{
"icon_id": "4780314",
"name": "更多",
"font_class": "gengduo",
"unicode": "e733",
"unicode_decimal": 59187
},
{
"icon_id": "4118258",
"name": "选择",
"font_class": "xuanze",
"unicode": "e86e",
"unicode_decimal": 59502
},
{
"icon_id": "11481969",
"name": "微信营销",
"font_class": "duanxinmobanku",
"unicode": "e94e",
"unicode_decimal": 59726
},
{
"icon_id": "11481929",
"name": "素材库",
"font_class": "sucaiku",
"unicode": "e94d",
"unicode_decimal": 59725
},
{
"icon_id": "11466838",
"name": "短信模板库",
"font_class": "moban",
"unicode": "e94a",
"unicode_decimal": 59722
},
{
"icon_id": "11466650",
"name": "短息群发",
"font_class": "duanxiqunfa",
"unicode": "e949",
"unicode_decimal": 59721
},
{
"icon_id": "11464168",
"name": "话术模板",
"font_class": "zidingyi",
"unicode": "e948",
"unicode_decimal": 59720
},
{
"icon_id": "11463979",
"name": "通话模板",
"font_class": "tonghuashezhi",
"unicode": "e947",
"unicode_decimal": 59719
},
{
"icon_id": "11463841",
"name": "话务群发",
"font_class": "piliangqunfa",
"unicode": "e946",
"unicode_decimal": 59718
},
{
"icon_id": "11213523",
"name": "详情",
"font_class": "dianjianxiangqing",
"unicode": "e91e",
"unicode_decimal": 59678
},
{
"icon_id": "4918851",
"name": "下载",
"font_class": "icon_yunxiazai",
"unicode": "e6e8",
"unicode_decimal": 59112
},
{
"icon_id": "11211458",
"name": "选中",
"font_class": "xuanzhong",
"unicode": "e91d",
"unicode_decimal": 59677
},
{
"icon_id": "11211433",
"name": "设置",
"font_class": "shezhi",
"unicode": "e91c",
"unicode_decimal": 59676
},
{
"icon_id": "7525939",
"name": "应用配置",
"font_class": "yingyongpeizhi",
"unicode": "e6b3",
"unicode_decimal": 59059
},
{
"icon_id": "11029885",
"name": "卡券库",
"font_class": "kaquan",
"unicode": "e908",
"unicode_decimal": 59656
},
{
"icon_id": "11030091",
"name": "卡券日志",
"font_class": "caozuorizhi",
"unicode": "e909",
"unicode_decimal": 59657
},
{
"icon_id": "11030163",
"name": "审核记录",
"font_class": "shenhejilu",
"unicode": "e90a",
"unicode_decimal": 59658
},
{
"icon_id": "111908",
"name": "不支持",
"font_class": "buzhichi",
"unicode": "e64c",
"unicode_decimal": 58956
},
{
"icon_id": "3710230",
"name": "统计报表",
"font_class": "tongjibaobiao",
"unicode": "e605",
"unicode_decimal": 58885
},
{
"icon_id": "11032295",
"name": "复制",
"font_class": "baobeifuzhi",
"unicode": "e90b",
"unicode_decimal": 59659
}
]
}
<template>
<div id="app" class="dm-reset">
<router-view/>
</div>
</template>
<script>
export default {
name: 'App'
};
</script>
import { request } from '@/utils/request.js';
export default function getFetch (api, baseUrl) {
api = api || {};
let keys = Object.keys(api);
keys.forEach(key => {
let opt = api[key];
if (typeof opt === 'string') opt = { url: opt };
opt.url = `${baseUrl}${opt.url}`;
api[key] = params => request(opt, params);
})
return api;
}
import getFetch from './getFetch.js';
let api = {
getUserInfo: '/user/get-login-user', // 获取用户信息
sendSmsCode: '/user/send-auth-code-to-modify-phone', // 发送手机验证码
editUserName: '//user/edit-user-name', // 修改姓名
updatePhone: '/user/modify-phone', // 修改手机号
updatePwd: '/user/modify-password', // 修改密码
logout: '/logout', // 登出
}
api = getFetch(api, '/gic-auth-web');
export default api;
<template>
<router-view/>
</template>
<script>
export default {
name: 'module-view'
}
</script>
function getOrigin() {
let origin = window.location.origin;
if (origin.indexOf('localhost') >= 0 || origin.indexOf('192.168') >= 0) {
origin = 'https://four.gicdev.com';
}
return origin;
}
export const origin = getOrigin();
// 请求成功的code
export const succCode = '0000';
// 未登录、登录超时code
export const notAuthCode = '6666';
// 后端请求拦截的标识,用于区分是ajax请求还是页面跳转
export const isRequest = { isControl: true };
/* Logo 字体 */
@font-face {
font-family: "iconfont logo";
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
}
.logo {
font-family: "iconfont logo";
font-size: 160px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* tabs */
.nav-tabs {
position: relative;
}
.nav-tabs .nav-more {
position: absolute;
right: 0;
bottom: 0;
height: 42px;
line-height: 42px;
color: #666;
}
#tabs {
border-bottom: 1px solid #eee;
}
#tabs li {
cursor: pointer;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 16px;
border-bottom: 2px solid transparent;
position: relative;
z-index: 1;
margin-bottom: -1px;
color: #666;
}
#tabs .active {
border-bottom-color: #f00;
color: #222;
}
.tab-container .content {
display: none;
}
/* 页面布局 */
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main .logo {
color: #333;
text-align: left;
margin-bottom: 30px;
line-height: 1;
height: 110px;
margin-top: -50px;
overflow: hidden;
*zoom: 1;
}
.main .logo a {
font-size: 160px;
color: #333;
}
.helps {
margin-top: 40px;
}
.helps pre {
padding: 20px;
margin: 10px 0;
border: solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists {
width: 100% !important;
overflow: hidden;
*zoom: 1;
}
.icon_lists li {
width: 100px;
margin-bottom: 10px;
margin-right: 20px;
text-align: center;
list-style: none !important;
cursor: default;
}
.icon_lists li .code-name {
line-height: 1.2;
}
.icon_lists .icon {
display: block;
height: 100px;
line-height: 100px;
font-size: 42px;
margin: 10px auto;
color: #333;
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
-moz-transition: font-size 0.25s linear, width 0.25s linear;
transition: font-size 0.25s linear, width 0.25s linear;
}
.icon_lists .icon:hover {
font-size: 100px;
}
.icon_lists .svg-icon {
/* 通过设置 font-size 来改变图标大小 */
width: 1em;
/* 图标和文字相邻时,垂直对齐 */
vertical-align: -0.15em;
/* 通过设置 color 来改变 SVG 的颜色/fill */
fill: currentColor;
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
normalize.css 中也包含这行 */
overflow: hidden;
}
.icon_lists li .name,
.icon_lists li .code-name {
color: #666;
}
/* markdown 样式 */
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p {
margin: 1em 0;
}
.markdown>p,
.markdown>blockquote,
.markdown>.highlight,
.markdown>ol,
.markdown>ul {
width: 80%;
}
.markdown ul>li {
list-style: circle;
}
.markdown>ul li,
.markdown blockquote ul>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown>ul li p,
.markdown>ol li p {
margin: 0.6em 0;
}
.markdown ol>li {
list-style: decimal;
}
.markdown>ol li,
.markdown blockquote ol>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown>table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown>table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown>table th,
.markdown>table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown>table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown>br,
.markdown>p>br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
/* 代码高亮 */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*="language-"],
pre[class*="language-"] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*="language-"]::-moz-selection,
pre[class*="language-"] ::-moz-selection,
code[class*="language-"]::-moz-selection,
code[class*="language-"] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*="language-"]::selection,
pre[class*="language-"] ::selection,
code[class*="language-"]::selection,
code[class*="language-"] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*="language-"] {
padding: 1em;
margin: .5em 0;
overflow: auto;
}
:not(pre)>code[class*="language-"],
pre[class*="language-"] {
background: #f5f2f0;
}
/* Inline code */
:not(pre)>code[class*="language-"] {
padding: .1em;
border-radius: .3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.namespace {
opacity: .7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
background: hsla(0, 0%, 100%, .5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function,
.token.class-name {
color: #DD4A68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}
@font-face {font-family: "iconfont";
src: url('iconfont.eot?t=1592962985406'); /* IE9 */
src: url('iconfont.eot?t=1592962985406#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
url('iconfont.woff?t=1592962985406') format('woff'),
url('iconfont.ttf?t=1592962985406') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
url('iconfont.svg?t=1592962985406#iconfont') format('svg'); /* iOS 4.1- */
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.iconyincang:before {
content: "\eadb";
}
.iconzhuzhuangtu:before {
content: "\e61d";
}
.iconquxiantu:before {
content: "\e61a";
}
.iconzhexiantu:before {
content: "\e67f";
}
.iconyue:before {
content: "\e643";
}
.iconri:before {
content: "\e60a";
}
.iconshanghuzhongxin:before {
content: "\ea7f";
}
.iconzhifu:before {
content: "\ea63";
}
.icontishi:before {
content: "\e692";
}
.iconyujingfasongjilu:before {
content: "\e985";
}
.iconchakan:before {
content: "\e984";
}
.iconnext:before {
content: "\e89a";
}
.iconxianshi:before {
content: "\e955";
}
.iconshaixuan:before {
content: "\e64c";
}
.iconwujieguo:before {
content: "\e7e3";
}
.iconziyuan:before {
content: "\e63c";
}
.icontuozhuai:before {
content: "\e601";
}
.iconjia:before {
content: "\e652";
}
.iconshenhe:before {
content: "\e60b";
}
.iconqrcode:before {
content: "\e600";
}
.iconyasuobao:before {
content: "\e649";
}
{
"id": "1472661",
"name": "GIC4.0系统配置",
"font_family": "iconfont",
"css_prefix_text": "icon",
"description": "",
"glyphs": [
{
"icon_id": "15523214",
"name": "隐藏",
"font_class": "yincang",
"unicode": "eadb",
"unicode_decimal": 60123
},
{
"icon_id": "4095159",
"name": "柱状图",
"font_class": "zhuzhuangtu",
"unicode": "e61d",
"unicode_decimal": 58909
},
{
"icon_id": "4866478",
"name": "曲线图2",
"font_class": "quxiantu",
"unicode": "e61a",
"unicode_decimal": 58906
},
{
"icon_id": "9242125",
"name": "折线图",
"font_class": "zhexiantu",
"unicode": "e67f",
"unicode_decimal": 59007
},
{
"icon_id": "2937616",
"name": "月",
"font_class": "yue",
"unicode": "e643",
"unicode_decimal": 58947
},
{
"icon_id": "8810536",
"name": "日",
"font_class": "ri",
"unicode": "e60a",
"unicode_decimal": 58890
},
{
"icon_id": "13692603",
"name": "商户中心",
"font_class": "shanghuzhongxin",
"unicode": "ea7f",
"unicode_decimal": 60031
},
{
"icon_id": "12997062",
"name": "支付配置",
"font_class": "zhifu",
"unicode": "ea63",
"unicode_decimal": 60003
},
{
"icon_id": "8887660",
"name": "提示",
"font_class": "tishi",
"unicode": "e692",
"unicode_decimal": 59026
},
{
"icon_id": "11898594",
"name": "发送记录",
"font_class": "yujingfasongjilu",
"unicode": "e985",
"unicode_decimal": 59781
},
{
"icon_id": "11892636",
"name": "查看",
"font_class": "chakan",
"unicode": "e984",
"unicode_decimal": 59780
},
{
"icon_id": "9603063",
"name": "next ",
"font_class": "next",
"unicode": "e89a",
"unicode_decimal": 59546
},
{
"icon_id": "11531366",
"name": "显示",
"font_class": "xianshi",
"unicode": "e955",
"unicode_decimal": 59733
},
{
"icon_id": "2875282",
"name": "筛选",
"font_class": "shaixuan",
"unicode": "e64c",
"unicode_decimal": 58956
},
{
"icon_id": "9880225",
"name": "无结果",
"font_class": "wujieguo",
"unicode": "e7e3",
"unicode_decimal": 59363
},
{
"icon_id": "8809228",
"name": "更多",
"font_class": "ziyuan",
"unicode": "e63c",
"unicode_decimal": 58940
},
{
"icon_id": "9117637",
"name": "拖拽",
"font_class": "tuozhuai",
"unicode": "e601",
"unicode_decimal": 58881
},
{
"icon_id": "492658",
"name": "添加图标",
"font_class": "jia",
"unicode": "e652",
"unicode_decimal": 58962
},
{
"icon_id": "2087832",
"name": "审核",
"font_class": "shenhe",
"unicode": "e60b",
"unicode_decimal": 58891
},
{
"icon_id": "10605721",
"name": "二维码",
"font_class": "qrcode",
"unicode": "e600",
"unicode_decimal": 58880
},
{
"icon_id": "3415881",
"name": "压缩包",
"font_class": "yasuobao",
"unicode": "e649",
"unicode_decimal": 58953
}
]
}
<template>
<dm-layout/>
</template>
<script>
export default {
name: 'layout'
}
</script>
import '@/styles/reset.less';
import 'element-ui/lib/theme-chalk/index.css';
import './images/font-icon/iconfont.css';
import './images/font-icon/iconfont.js';
import Vue from 'vue';
import VueRouter from 'vue-router';
import axios from 'axios';
import ElementUI from 'element-ui';
import App from './App.vue';
import router from './router';
// import { isRequest, itemCode } from '@/config';
Vue.use(VueRouter);
Vue.use(ElementUI);
// 请求头这种添加请求标识
// Object.assign(axios.defaults.headers.common, isRequest);
axios.defaults.withCredentials = true;
Vue.prototype.axios = axios;
// 开启vue devtools.....
/* eslint-disable-next-line */
Vue.config.devtools = process.env.NODE_ENV !== 'production';
Vue.config.productionTip = false;
new Vue({
router,
render: h => h(App)
}).$mount('#app')
'use strict';
/* eslint-disable */
function _broadcast(componentName, eventName, params) {
this.$children.forEach(function(child) {
var name = child.$options.componentName;
if (name === componentName) {
child.$emit.apply(child, [eventName].concat(params));
} else {
_broadcast.apply(child, [componentName, eventName].concat([params]));
}
});
}
export default {
methods: {
dispatch: function dispatch(componentName, eventName, params) {
var parent = this.$parent || this.$root;
var name = parent.$options.componentName;
while (parent && (!name || name !== componentName)) {
parent = parent.$parent;
if (parent) {
name = parent.$options.componentName;
}
}
if (parent) {
parent.$emit.apply(parent, [eventName].concat(params));
}
},
broadcast: function broadcast(componentName, eventName, params) {
_broadcast.call(this, componentName, eventName, params);
}
}
};
import VueRouter from 'vue-router';
import { routes } from './routes.js';
const router = new VueRouter({
routes
});
export default router;
import Layout from '@/layout/layout.vue';
export const routes = [
// 账号管理
{
path: '/',
component: Layout,
redirect: '/hello',
children: [
{
path: '/hello',
meta: { name: '测试页面' },
component: () => import('@/views/hello.vue')
}
]
},
{
path: '*',
redirect: '/'
}
]
// selected background color
@blue-selected: #f0f5ff;
// hover
@blue-hover: #597ef7;
// click
@blue-click: #1d39c4;
// normal、link、brand color
@blue: #2f54ed;
// success
@green-success: #52c41a;
// warning
@yellow-warning: #faad14;
// success
@red-error: #f5222d;
// 标题文字
@gray01: #303133;
// 常规信息、按钮文字
@gray02: #606266;
// 内容文字、说明文字
@gray03: #909399;
// 输入框说明文字
@gray-placeholder: #c0c4cc;
// 线框、输入框、下拉框的边框颜色
@gray-border: #c4c6cf;
// tab选项卡、表格单元格底部分割线
@gray-tab: #dcdfe6;
// 表头背景色
@gray-thead: #ebecf0;
// 分割线的颜色
@gray-separator: #e4e7ed;
// 背景底色
@gray-background: #f0f2f5;
// 输入框禁止输入的颜色
@gray-disable: #f5f7fa;
// selected background color
$blue-selected: #f0f5ff;
// hover
$blue-hover: #597ef7;
// click
$blue-click: #1d39c4;
// normal、link、brand color
$blue: #2f54ed;
// success
$green-success: #52c41a;
// warning
$yellow-warning: #faad14;
// success
$red-error: #f5222d;
// 标题文字
$gray01: #303133;
// 常规信息、按钮文字
$gray02: #606266;
// 内容文字、说明文字
$gray03: #909399;
// 输入框说明文字
$gray-placeholder: #c0c4cc;
// 线框、输入框、下拉框的边框颜色
$gray-border: #c4c6cf;
// tab选项卡、表格单元格底部分割线
$gray-tab: #dcdfe6;
// 表头背景色
$gray-thead: #ebecf0;
// 分割线的颜色
$gray-separator: #e4e7ed;
// 背景底色
$gray-background: #f0f2f5;
// 输入框禁止输入的颜色
$gray-disable: #f5f7fa;
// selected background color
$blue-selected=#f0f5ff;
// hover
$blue-hover=#597ef7;
// click
$blue-click=#1d39c4;
// normal、link、brand color
$blue=#2f54ed;
// success
$green-success=#52c41a;
// warning
$yellow-warning=#faad14;
// success
$red-error=#f5222d;
// 标题文字
$gray01=#303133;
// 常规信息、按钮文字
$gray02=#606266;
// 内容文字、说明文字
$gray03=#909399;
// 输入框说明文字
$gray-placeholder=#c0c4cc;
// 线框、输入框、下拉框的边框颜色
$gray-border=#c4c6cf;
// tab选项卡、表格单元格底部分割线
$gray-tab=#dcdfe6;
// 表头背景色
$gray-thead=#ebecf0;
// 分割线的颜色
$gray-separator=#e4e7ed;
// 背景底色
$gray-background=#f0f2f5;
// 输入框禁止输入的颜色
$gray-disable=#f5f7fa;
@import './colors.scss';
.font-909399 {
color: #909399;
}
.damolish .dm-store-plus {
display: inline-block;
vertical-align: middle;
font-weight: bold;
color: #1890FF;
}
.option-dropdown {
padding: 13px 8px !important;
li {
padding: 0 8px;
text-align: center;
height: 32px;
line-height: 32px;
color: $gray02;
font-size: 14px;
cursor: pointer;
&.disabled {
cursor: no-drop;
}
&:hover, &.active {
background: #ecf5ff;
color: $blue;
}
}
padding: 13px 5px;
min-width: 170px;
&.gray {
li {
color: $gray02;
}
li:hover, li.active {
color: $gray02;
background: $gray-disable;
}
}
}
pre, textarea {
font-family: inherit;
}
/**
按钮微动
**/
[ant-click-animating],
[ant-click-animating-without-extra-node] {
position: relative;
}
[ant-click-animating-without-extra-node]:after,
.ant-click-animating-node {
content: '';
position: absolute;
top: -1px;
left: -1px;
bottom: -1px;
right: -1px;
border-radius: inherit;
border: 0 solid #1890ff;
opacity: 0.2;
-webkit-animation: fadeEffect 2s cubic-bezier(0.08, 0.82, 0.17, 1), waveEffect 0.4s cubic-bezier(0.08, 0.82, 0.17, 1);
animation: fadeEffect 2s cubic-bezier(0.08, 0.82, 0.17, 1), waveEffect 0.4s cubic-bezier(0.08, 0.82, 0.17, 1);
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
display: block;
pointer-events: none;
}
@-webkit-keyframes waveEffect {
100% {
top: -6px;
left: -6px;
bottom: -6px;
right: -6px;
border-width: 6px;
}
}
@keyframes waveEffect {
100% {
top: -6px;
left: -6px;
bottom: -6px;
right: -6px;
border-width: 6px;
}
}
@-webkit-keyframes fadeEffect {
100% {
opacity: 0;
}
}
@keyframes fadeEffect {
100% {
opacity: 0;
}
}
/* 框的微动效 */
.el-select .el-input__inner {
border: none;
}
.el-input__inner:focus{
box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
border-right-width: 1px !important;
}
.el-textarea__inner:focus,
.el-range-editor.is-active,
.el-range-editor.is-active:hover {
box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}
.el-select .el-input {
border: 1px solid #c0c4cc;
border-radius: 4px;
}
.el-select .el-input.is-focus {
border-color: #1890ff;
box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}
.el-select .el-input .el-input__inner {
box-shadow: none;
}
/* 对话框的弹入 弹出效果 */
.dialog-fade-enter-active {
-webkit-animation: dialog-fade-in .3s;
animation: dialog-fade-in .3s;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.dialog-fade-leave-active {
-webkit-animation: dialog-fade-out .3s;
animation: dialog-fade-out .3s;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.dialog-fade-enter-active {
/* transform: scale(0); */
-webkit-animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1);
animation-timing-function: cubic-bezier(0.08, 0.82, 0.17, 1);
}
.dialog-fade-leave-active {
-webkit-animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86);
animation-timing-function: cubic-bezier(0.78, 0.14, 0.15, 0.86);
}
@-webkit-keyframes dialog-fade-in{
0% {
opacity: 0;
}
1% {
transform: scale(0, 0);
}
100% {
opacity: 1;
transform: scale(1, 1);
}
}
@keyframes dialog-fade-in {
0% {
opacity: 0;
}
1% {
transform: scale(0, 0);
}
100% {
opacity: 1;
transform: scale(1, 1);
}
}
@-webkit-keyframes dialog-fade-out {
0% {
transform: scale(1, 1)
}
100% {
opacity: 0;
transform: scale(0, 0);
}
}
@keyframes dialog-fade-out{
0% {
transform: scale(1, 1)
}
100% {
opacity: 0;
transform: scale(0, 0);
}
}
.damo-table-animation {
-webkit-animation: table-animation 0.5s;
animation: table-animation 0.5s;
}
@keyframes table-animation {
0% {
opacity: 0;
}
100% {
transform: translateX(30px);
opacity: 1;
}
}
@-webkit-keyframes table-animation {
0% {
opacity: 0;
}
100% {
transform: translateX(-30px);
opacity: 1;
}
}
/* tag的reset */
.dm-reset-style .el-tag.el-tag--info .el-tag__close:hover {
color: #FFFFFF;
background-color: #f4f4f5;
}
.dm-reset-style .el-step-text {
position: relative;
top: -4px;
left: -4px;
display: inline-block;
vertical-align: text-top;
font-size: 14px;
background-color: #fff;
padding: 0 5px;
}
.dm-reset-style .el-step__title {
line-height: 24px;
}
.dm-reset-style .el-step__title.is-success {
color: #909399;
}
.dm-reset-style .is-process .is-text {
background-color: #409eff;
border-color: #409eff;
color: #fff;
}
.dm-reset-style .el-step__head.is-success {
color: #409eff;
border-color: #409eff;
}
.dm-reset-style .el-step__description {
max-width: 150px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
color: #c0c4cc;
}
/* 点状 */
.dm-reset-style .el-step__icon.is-dot {
height: 12px;
width: 12px;
top: 6px;
}
.dm-reset-style .el-step__title.is-dot {
margin-top: 10px;
}
.el-select-dropdown {
min-width: 214px;
}
/* .el-input__inner {
height: 32px !important;
} */
.damolish .el-transfer-panel__select .el-input__inner {
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
width: 142px;
/* margin-top: 8px; */
/* margin-left: -6px; */
}
.damolish .el-transfer-panel__select {
display: inline-block;
vertical-align: middle;
margin: 0;
margin-top: 15px;
margin-left: -6px;
}
.damolish .el-transfer-panel__body .el-select {
display: inline-block;
vertical-align: middle;
margin-top: 15px;
margin-left: 15px;
}
.damolish .el-transfer-panel__body {
border-top: 1px solid transparent;
}
.damolish .el-transfer__slot {
width: 270px;
}
\ No newline at end of file
/**
* Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
* http://cssreset.com
*/
@import "./colors.less";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
input {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font-weight: normal;
vertical-align: baseline;
box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
display: block;
}
body {
line-height: 1;
}
blockquote,
q {
quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* custom */
a {
color: inherit;
text-decoration: none;
-webkit-backface-visibility: hidden;
}
li {
list-style: none;
}
input::-webkit-input-placeholder{
color: @gray-placeholder;
}
input:-ms-input-placeholder{
color: @gray-placeholder;
}
input::-moz-placeholder{
color: @gray-placeholder;
}
::-webkit-scrollbar {
width: 5px;
height: 5px;
-webkit-border-radius: 6px;
border-radius: 6px;
}
::-webkit-scrollbar-track {
-webkit-border-radius: 6px;
border-radius: 6px;
}
::-webkit-scrollbar-track-piece {
/*background-color: rgba(0, 0, 0, 0.2);
-webkit-border-radius: 6px;*/
}
::-webkit-scrollbar-thumb {
-webkit-border-radius: 6px;
border-radius: 6px;
background-color: rgba(0, 0, 0, 0.1)
}
@-moz-document url-prefix(http: //),url-prefix(https://) {
/* 滚动条颜色 */
scrollbar {
-moz-appearance: none !important;
width: 5px;
height: 5px;
-webkit-border-radius: 6px;
border-radius: 6px;
}
/* 滚动条按钮颜色 */
thumb, scrollbarbutton {
-moz-appearance: none !important;
}
/* 鼠标悬停时按钮颜色 */
thumb:hover, scrollbarbutton:hover {
-moz-appearance: none !important;
}
/* 隐藏上下箭头 */
scrollbarbutton {
display: none !important;
}
/* 纵向滚动条宽度 */
scrollbar[orient="vertical"] {
/*min-width: 15px !important;*/
}
}
scrollbar {
/* clear useragent default style*/
-moz-appearance: none !important;
}
/* buttons at two ends */
scrollbarbutton {
-moz-appearance: none !important;
}
/* the sliding part*/
thumb {
-moz-appearance: none !important;
}
scrollcorner {
-moz-appearance: none !important;
resize: both;
}
/* vertical or horizontal */
scrollbar[orient="vertical"] {
color: silver;
}
-moz-scrollbar-track {
width: 5px;
border: none;
background: #ff0000;
}
-moz-scrollbar-face {
width: 5px;
border: none;
background: #ff0000;
}
-moz-scrollbar-arrow {
width: 5px;
border: none;
background: #ff0000;
}
-moz-scrollbar {
-moz-scrollbar-width: 15px;
-moz-scrollbar-border: 1px solid black;
-moz-scrollbar-background-color: white;
-moz-scrollbar-track-background-color: silver;
-moz-scrollbar-arrow-background-color: silver;
-moz-scrollbar-arrow-color: blue;
}
/*::-webkit-scrollbar-button {
color: #c8cbd3;
}*/
html, body {
width: 100%;
height: 100%;
background-color: @gray-background;
font-size: 14px;
font-family: "Helvetica Neue", "Helvetica", "PingFang SC", "Hiragino Sans GB","Microsoft YaHei", "微软雅黑", Arial, sans-serif;
}
body {
-webkit-text-size-adjust: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
input:focus {
box-shadow: none;
outline: none;
}
const TokenKey = 'Admin-Token'
export function getToken() {
return localStorage.getItem(TokenKey);
}
export function setToken(token) {
return localStorage.setItem(TokenKey, token);
}
export function removeToken() {
return localStorage.removeItem(TokenKey);
}
import Vue from 'vue'
import Clipboard from 'clipboard'
function clipboardSuccess() {
Vue.prototype.$message({
message: '复制成功',
type: 'success',
duration: 1500
})
}
function clipboardError() {
Vue.prototype.$message({
message: '复制失败',
type: 'error'
})
}
export default function handleClipboard(text, event) {
const clipboard = new Clipboard(event.target, {
text: () => text
})
clipboard.on('success', () => {
clipboardSuccess()
clipboard.off('error')
clipboard.off('success')
clipboard.destroy()
})
clipboard.on('error', () => {
clipboardError()
clipboard.off('error')
clipboard.off('success')
clipboard.destroy()
})
clipboard.onClick(event)
}
/**
* 传入参数 向url后追加 返回新的url
* @param {string} uri 原始url
* @param {string} key 追加的key
* @param {string} value 追加的key的value
*/
export const updateQueryStringParameter = (uri, key, value) => {
if (!value) {
return uri;
}
var re = new RegExp('([?&])' + key + '=.*?(&|$)', 'i');
var separator = uri.indexOf('?') !== -1 ? '&' : '?';
if (uri.match(re)) {
return uri.replace(re, '$1' + key + '=' + value + '$2');
} else {
return uri + separator + key + '=' + value;
}
};
// 序列化反序列化法 深拷贝对象
export const deepClone = obj => {
return JSON.parse(JSON.stringify(obj));
};
\ No newline at end of file
[{"city":"中国大陆","code":"+86"},{"city":"中国香港","code":"+852"},{"city":"中国澳门","code":"+853"},{"city":"中国台湾","code":"+886"},{"city":"新加坡","code":"+65"},{"city":"阿富汗","code":"+93"},{"city":"阿尔巴尼亚","code":"+355"},{"city":"阿尔格拉","code":"+213"},{"city":"安道尔","code":"+376"},{"city":"安哥拉","code":"+244"},{"city":"安圭拉","code":"+1264"},{"city":"阿森松岛","code":"+247"},{"city":"安提瓜和巴布达","code":"+1268"},{"city":"阿根廷","code":"+54"},{"city":"亚美尼亚","code":"+374"},{"city":"阿鲁巴","code":"+297"},{"city":"澳大利亚","code":"+61"},{"city":"奥地利","code":"+43"},{"city":"阿塞拜疆","code":"+994"},{"city":"巴哈马","code":"+1242"},{"city":"巴林","code":"+973"},{"city":"孟加拉国","code":"+880"},{"city":"巴巴多斯","code":"+1246"},{"city":"白俄罗斯","code":"+375"},{"city":"比利时","code":"+32"},{"city":"伯利兹","code":"+501"},{"city":"贝宁","code":"+229"},{"city":"百慕大","code":"+1441"},{"city":"不丹","code":"+975"},{"city":"玻利维亚","code":"+591"},{"city":"波斯尼亚和黑塞哥维那","code":"+387"},{"city":"博茨瓦纳","code":"+267"},{"city":"巴西","code":"+55"},{"city":"文莱","code":"+673"},{"city":"保加利亚","code":"+359"},{"city":"布基纳法索","code":"+226"},{"city":"布隆迪","code":"+257"},{"city":"柬埔寨","code":"+855"},{"city":"喀麦隆","code":"+237"},{"city":"加拿大","code":"+1"},{"city":"佛得角","code":"+238"},{"city":"开曼群岛","code":"+1345"},{"city":"中非共和国","code":"+236"},{"city":"乍得","code":"+235"},{"city":"智利","code":"+56"},{"city":"哥伦比亚","code":"+57"},{"city":"科摩罗","code":"+269"},{"city":"刚果共和国","code":"+242"},{"city":"刚果民主共和国","code":"+243"},{"city":"库克群岛","code":"+682"},{"city":"哥斯达黎加","code":"+506"},{"city":"科特迪沃","code":"+225"},{"city":"克罗地亚","code":"+385"},{"city":"古巴","code":"+53"},{"city":"塞浦路斯","code":"+357"},{"city":"+捷克共和国","code":"+420"},{"city":"丹麦","code":"+45"},{"city":"吉布提","code":"+253"},{"city":"多米尼加","code":"+1767"},{"city":"多米尼加共和国","code":"+1809"},{"city":"厄瓜多尔","code":"+593"},{"city":"埃及","code":"+20"},{"city":"艾萨尔瓦多","code":"+503"},{"city":"爱沙尼亚","code":"+372"},{"city":"埃塞俄比亚","code":"+251"},{"city":"法罗群岛","code":"+298"},{"city":"斐济","code":"+679"},{"city":"芬兰","code":"+358"},{"city":"法国","code":"+33"},{"city":"法属圭亚那","code":"+594"},{"city":"法属波利尼西亚","code":"+689"},{"city":"加蓬","code":"+241"},{"city":"冈比亚","code":"+220"},{"city":"格鲁吉亚","code":"+995"},{"city":"德国","code":"+94"},{"city":"加纳","code":"+233"},{"city":"直布罗陀","code":"+350"},{"city":"希腊","code":"+30"},{"city":"格陵兰","code":"+299"},{"city":"格林纳达","code":"+1473"},{"city":"瓜德罗普","code":"+590"},{"city":"关岛","code":"+1671"},{"city":"危地马拉","code":"+502"},{"city":"几内亚","code":"+240"},{"city":"根西","code":"+44"},{"city":"几内亚","code":"+224"},{"city":"圭亚那","code":"+592"},{"city":"海地","code":"+509"},{"city":"洪都拉斯","code":"+504"},{"city":"缅甸","code":"+95"},{"city":"匈牙利","code":"+36"},{"city":"冰岛","code":"+354"},{"city":"印度","code":"+91"},{"city":"印度尼西亚","code":"+62"},{"city":"伊朗","code":"+98"},{"city":"伊拉克","code":"+964"},{"city":"爱尔兰","code":"+353"},{"city":"马恩岛","code":"+44"},{"city":"以色列","code":"+972"},{"city":"意大利","code":"+93"},{"city":"牙买加","code":"+1876"},{"city":"日本","code":"+81"},{"city":"泽西岛","code":"+44"},{"city":"约旦","code":"+962"},{"city":"哈萨克斯坦","code":"+7"},{"city":"肯尼亚","code":"+254"},{"city":"科索沃","code":"+383"},{"city":"科威特","code":"+965"},{"city":"吉尔吉斯斯坦","code":"+996"},{"city":"老挝","code":"+856"},{"city":"拉脱维亚","code":"+371"},{"city":"黎巴嫩","code":"+961"},{"city":"莱索托","code":"+266"},{"city":"利比里亚","code":"+231"},{"city":"利比亚","code":"+218"},{"city":"列支敦士登","code":"+423"},{"city":"立陶宛","code":"+370"},{"city":"卢森堡","code":"+352"},{"city":"马其顿","code":"+389"},{"city":"马达加斯加","code":"+261"},{"city":"马拉维","code":"+265"},{"city":"马来西亚","code":"+60"},{"city":"马尔代夫","code":"+960"},{"city":"马里","code":"+223"},{"city":"马耳他","code":"+356"},{"city":"马提尼克","code":"+596"},{"city":"毛里塔尼亚","code":"+222"},{"city":"毛里求斯","code":"+230"},{"city":"马约特","code":"+262"},{"city":"墨西哥","code":"+52"},{"city":"摩尔多瓦","code":"+373"},{"city":"摩纳哥","code":"+377"},{"city":"蒙古","code":"+976"},{"city":"黑山","code":"+382"},{"city":"蒙特塞拉特","code":"+1664"},{"city":"摩洛哥","code":"+212"},{"city":"莫桑比克","code":"+258"},{"city":"纳米比亚","code":"+264"},{"city":"尼泊尔","code":"+977"},{"city":"荷兰","code":"+31"},{"city":"荷属安的列斯","code":"+599"},{"city":"新喀里多尼亚","code":"+687"},{"city":"新西兰","code":"+64"},{"city":"尼加拉瓜","code":"+505"},{"city":"尼日尔","code":"+227"},{"city":"尼日利亚","code":"+234"},{"city":"挪威","code":"+47"},{"city":"阿曼","code":"+968"},{"city":"巴基斯坦","code":"+92"},{"city":"巴勒斯坦","code":"+970"},{"city":"巴拿马","code":"+507"},{"city":"巴布亚新几内亚","code":"+675"},{"city":"巴拉圭","code":"+595"},{"city":"秘鲁","code":"+51"},{"city":"菲律宾","code":"+63"},{"city":"波兰","code":"+48"},{"city":"葡萄牙","code":"+351"},{"city":"波多黎各","code":"+1"},{"city":"库塔","code":"+974"},{"city":"留尼汪","code":"+262"},{"city":"罗马尼亚","code":"+40"},{"city":"俄罗斯","code":"+7"},{"city":"卢旺达","code":"+250"},{"city":"萨摩亚东部","code":"+684"},{"city":"萨摩亚西部","code":"+685"},{"city":"圣马力诺","code":"+378"},{"city":"圣多美和普林西比","code":"+239"},{"city":"沙特阿拉伯","code":"+966"},{"city":"塞内加尔","code":"+221"},{"city":"塞尔维亚","code":"+381"},{"city":"塞舌尔","code":"+248"},{"city":"塞拉利昂","code":"+232"},{"city":"斯洛伐克","code":"+421"},{"city":"斯洛文尼亚","code":"+386"},{"city":"南非","code":"+27"},{"city":"韩国","code":"+82"},{"city":"西班牙","code":"+34"},{"city":"斯里兰卡","code":"+94"},{"city":"圣基茨和尼维斯","code":"+1869"},{"city":"圣卢西亚","code":"+1758"},{"city":"圣文森特","code":"+1784"},{"city":"苏丹","code":"+249"},{"city":"苏里南","code":"+597"},{"city":"斯威士兰","code":"+268"},{"city":"瑞典","code":"+46"},{"city":"瑞士","code":"+41"},{"city":"叙利亚","code":"+963"},{"city":"塔吉克斯坦","code":"+992"},{"city":"坦桑尼亚","code":"+255"},{"city":"泰国","code":"+66"},{"city":"东帝汶","code":"+670"},{"city":"多哥","code":"+228"},{"city":"汤加","code":"+676"},{"city":"特立尼达和多巴哥","code":"+1868"},{"city":"突尼斯","code":"+216"},{"city":"土耳其","code":"+90"},{"city":"土库曼斯坦","code":"+993"},{"city":"特克斯和凯科斯群岛","code":"+1649"},{"city":"乌干达","code":"+256"},{"city":"乌克兰","code":"+380"},{"city":"阿拉伯联合酋长国","code":"+971"},{"city":"英国","code":"+44"},{"city":"美国","code":"+1"},{"city":"乌拉圭","code":"+598"},{"city":"乌兹别克斯坦","code":"+998"},{"city":"瓦努阿图","code":"+678"},{"city":"委内瑞拉","code":"+58"},{"city":"越南","code":"+84"},{"city":"维尔京群岛","code":"+1340"},{"city":"也门","code":"+967"},{"city":"赞比亚","code":"+260"},{"city":"津巴布韦","code":"+263"}]
\ No newline at end of file
import axios from 'axios';
import qs from 'qs';
import { Message } from 'element-ui';
import { origin, succCode, notAuthCode } from '@/config/index.js';
/* eslint-disable-next-line */
// const BASEURL = process.env.NODE_ENV !== 'production' ? 'https://four.gicdev.com' : '';
axios.defaults.baseURL = origin;
const request = (opt, params) => {
params = Object.assign({}, params);
opt = Object.assign({}, opt);
let requestConfig = {
// 请求路径
url: '',
params: '',
data: '',
// 请求type
method: 'get',
// request body 是否使用 formData格式
useFormData: false,
// response 是否使用 code === '0000' 验证
useIntercept: true,
// 设置headers
headers: {}
}
requestConfig = Object.assign(requestConfig, opt);
if (requestConfig.useFormData) params = qs.stringify(params);
switch (requestConfig.method.toLowerCase()) {
case 'get':
requestConfig.params = params;
break;
case 'post':
requestConfig.data = params;
break;
default:
requestConfig.data = params;
break;
}
return new Promise((resolve, reject) => {
axios(requestConfig).then(res => {
let resp = res.data;
if (resp.code == notAuthCode) {
window.location.href = `${origin}/damo-system/login`;
return;
}
if (requestConfig.useIntercept && resp.code != succCode) {
Message({
message: resp.message || '未知错误',
type: 'warning'
});
return reject(resp);
}
resolve(resp);
}).catch(error => {
let response = error.response ||{};
let data = response.data || {};
Message({
message: data.message || '未知错误',
type: 'warning'
})
reject(error);
})
});
}
export {axios, request};
<template>
<div>好办 4.0</div>
</template>
<script>
export default {
name: 'hello'
}
</script>
const path = require("path");
module.exports = {
productionSourceMap: process.env.NODE_ENV !== 'production',
// publicPath: process.env.NODE_ENV === 'production' ? '/damo-system' : '/',
devServer: {
overlay: {
warnings: true,
errors: true
}
},
configureWebpack: config => {
config.externals = {
vue: 'Vue',
vuex: 'Vuex',
axios: 'axios',
};
if (process.env.NODE_ENV === 'production') {
config.optimization.minimizer[0].options.terserOptions.compress.warnings = false;
config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true;
config.optimization.minimizer[0].options.terserOptions.compress.drop_debugger = true;
config.optimization.minimizer[0].options.terserOptions.compress.pure_funcs = [
'console.log'
];
}
}
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment