feat: 移除 mockjs 以及相关示例
This commit is contained in:
parent
a1b396ee3b
commit
804f66eb05
|
|
@ -1,7 +0,0 @@
|
|||
# No Mock 构建
|
||||
|
||||
# 指定构建模式
|
||||
NODE_ENV=production
|
||||
|
||||
# 标记当前是 No Mock 构建
|
||||
VUE_APP_BUILD_MODE=NOMOCK
|
||||
|
|
@ -6,7 +6,6 @@ module.exports = [
|
|||
{ name: 'axios', library: 'axios', js: 'https://cdn.jsdelivr.net/npm/axios@0.19.0/dist/axios.min.js', css: '' },
|
||||
{ name: 'better-scroll', library: 'BScroll', js: 'https://cdn.jsdelivr.net/npm/better-scroll@1.15.2/dist/bscroll.min.js', css: '' },
|
||||
{ name: 'element-ui', library: 'ELEMENT', js: 'https://cdn.jsdelivr.net/npm/element-ui@2.13.1/lib/index.js', css: 'https://cdn.jsdelivr.net/npm/element-ui@2.13.0/lib/theme-chalk/index.css' },
|
||||
{ name: 'mockjs', library: 'Mock', js: 'https://cdn.jsdelivr.net/npm/mockjs@1.1.0/dist/mock.min.js', css: '' },
|
||||
{ name: 'lodash', library: '_', js: 'https://cdn.jsdelivr.net/npm/lodash@4.17.15/lodash.min.js', css: '' },
|
||||
{ name: 'ua-parser-js', library: 'UAParser', js: 'https://cdn.jsdelivr.net/npm/ua-parser-js@0.7.20/dist/ua-parser.min.js', css: '' },
|
||||
{ name: 'js-cookie', library: 'Cookies', js: 'https://cdn.jsdelivr.net/npm/js-cookie@2.2.1/src/js.cookie.min.js', css: '' },
|
||||
|
|
@ -14,7 +13,6 @@ module.exports = [
|
|||
{ name: 'dayjs', library: 'dayjs', js: 'https://cdn.jsdelivr.net/npm/dayjs@1.8.17/dayjs.min.js', css: '' },
|
||||
{ name: 'fuse.js', library: 'Fuse', js: 'https://cdn.jsdelivr.net/npm/fuse.js@3.4.6/dist/fuse.min.js', css: '' },
|
||||
{ name: 'hotkeys-js', library: 'hotkeys', js: 'https://cdn.jsdelivr.net/npm/hotkeys-js@3.7.3/dist/hotkeys.min.js', css: '' },
|
||||
{ name: 'qs', library: 'Qs', js: 'https://cdn.jsdelivr.net/npm/qs@6.9.1/dist/qs.js', css: '' },
|
||||
{ name: 'lowdb', library: 'low', js: 'https://cdn.jsdelivr.net/npm/lowdb@1.0.0/dist/low.min.js', css: '' },
|
||||
{ name: 'lowdb/adapters/LocalStorage', library: 'LocalStorage', js: 'https://cdn.jsdelivr.net/npm/lowdb@1.0.0/dist/LocalStorage.min.js', css: '' },
|
||||
{ name: 'screenfull', library: 'screenfull', js: 'https://cdn.jsdelivr.net/npm/screenfull@5.0.2/dist/screenfull.min.js', css: '' },
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "d2-admin",
|
||||
"version": "1.8.0",
|
||||
"version": "1.10.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
@ -959,6 +959,80 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"@commitlint/execute-rule": {
|
||||
"version": "8.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-8.3.4.tgz",
|
||||
"integrity": "sha512-f4HigYjeIBn9f7OuNv5zh2y5vWaAhNFrfeul8CRJDy82l3Y+09lxOTGxfF3uMXKrZq4LmuK6qvvRCZ8mUrVvzQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"@commitlint/load": {
|
||||
"version": "8.3.5",
|
||||
"resolved": "https://registry.npmjs.org/@commitlint/load/-/load-8.3.5.tgz",
|
||||
"integrity": "sha512-poF7R1CtQvIXRmVIe63FjSQmN9KDqjRtU5A6hxqXBga87yB2VUJzic85TV6PcQc+wStk52cjrMI+g0zFx+Zxrw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@commitlint/execute-rule": "^8.3.4",
|
||||
"@commitlint/resolve-extends": "^8.3.5",
|
||||
"babel-runtime": "^6.23.0",
|
||||
"chalk": "2.4.2",
|
||||
"cosmiconfig": "^5.2.0",
|
||||
"lodash": "4.17.15",
|
||||
"resolve-from": "^5.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"resolve-from": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
|
||||
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"@commitlint/resolve-extends": {
|
||||
"version": "8.3.5",
|
||||
"resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-8.3.5.tgz",
|
||||
"integrity": "sha512-nHhFAK29qiXNe6oH6uG5wqBnCR+BQnxlBW/q5fjtxIaQALgfoNLHwLS9exzbIRFqwJckpR6yMCfgMbmbAOtklQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"import-fresh": "^3.0.0",
|
||||
"lodash": "4.17.15",
|
||||
"resolve-from": "^5.0.0",
|
||||
"resolve-global": "^1.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"import-fresh": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
|
||||
"integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"parent-module": "^1.0.0",
|
||||
"resolve-from": "^4.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"resolve-from": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
|
||||
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"resolve-from": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
|
||||
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"@d2-projects/d2-crud": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@d2-projects/d2-crud/-/d2-crud-2.1.2.tgz",
|
||||
|
|
@ -3534,6 +3608,12 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"cachedir": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.2.0.tgz",
|
||||
"integrity": "sha512-VvxA0xhNqIIfg0V9AmJkDg91DaJwryutH5rVEZAhcNi4iJFj9f+QxmAjgK1LT9I8OgToX27fypX6/MeCXVbBjQ==",
|
||||
"dev": true
|
||||
},
|
||||
"call-me-maybe": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz",
|
||||
|
|
@ -4160,6 +4240,153 @@
|
|||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
|
||||
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
|
||||
},
|
||||
"commitizen": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/commitizen/-/commitizen-4.1.2.tgz",
|
||||
"integrity": "sha512-LBxTQKHbVgroMz9ohpm86N+GfJobonGyvDc3zBGdZazbwCLz2tqLa48Rf2TnAdKx7/06W1i1R3SXUt5QW97qVQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cachedir": "2.2.0",
|
||||
"cz-conventional-changelog": "3.2.0",
|
||||
"dedent": "0.7.0",
|
||||
"detect-indent": "6.0.0",
|
||||
"find-node-modules": "2.0.0",
|
||||
"find-root": "1.1.0",
|
||||
"fs-extra": "8.1.0",
|
||||
"glob": "7.1.4",
|
||||
"inquirer": "6.5.0",
|
||||
"is-utf8": "^0.2.1",
|
||||
"lodash": "4.17.15",
|
||||
"minimist": "1.2.5",
|
||||
"strip-bom": "4.0.0",
|
||||
"strip-json-comments": "3.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-regex": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
|
||||
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
|
||||
"dev": true
|
||||
},
|
||||
"cz-conventional-changelog": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-3.2.0.tgz",
|
||||
"integrity": "sha512-yAYxeGpVi27hqIilG1nh4A9Bnx4J3Ov+eXy4koL3drrR+IO9GaWPsKjik20ht608Asqi8TQPf0mczhEeyAtMzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@commitlint/load": ">6.1.1",
|
||||
"chalk": "^2.4.1",
|
||||
"commitizen": "^4.0.3",
|
||||
"conventional-commit-types": "^3.0.0",
|
||||
"lodash.map": "^4.5.1",
|
||||
"longest": "^2.0.1",
|
||||
"word-wrap": "^1.0.3"
|
||||
}
|
||||
},
|
||||
"fs-extra": {
|
||||
"version": "8.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
|
||||
"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "^4.2.0",
|
||||
"jsonfile": "^4.0.0",
|
||||
"universalify": "^0.1.0"
|
||||
}
|
||||
},
|
||||
"glob": {
|
||||
"version": "7.1.4",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz",
|
||||
"integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.0.4",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"inquirer": {
|
||||
"version": "6.5.0",
|
||||
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz",
|
||||
"integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-escapes": "^3.2.0",
|
||||
"chalk": "^2.4.2",
|
||||
"cli-cursor": "^2.1.0",
|
||||
"cli-width": "^2.0.0",
|
||||
"external-editor": "^3.0.3",
|
||||
"figures": "^2.0.0",
|
||||
"lodash": "^4.17.12",
|
||||
"mute-stream": "0.0.7",
|
||||
"run-async": "^2.2.0",
|
||||
"rxjs": "^6.4.0",
|
||||
"string-width": "^2.1.0",
|
||||
"strip-ansi": "^5.1.0",
|
||||
"through": "^2.3.6"
|
||||
}
|
||||
},
|
||||
"minimist": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
||||
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
|
||||
"dev": true
|
||||
},
|
||||
"string-width": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
|
||||
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-fullwidth-code-point": "^2.0.0",
|
||||
"strip-ansi": "^4.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"strip-ansi": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
|
||||
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^3.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
|
||||
"integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^4.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-regex": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
|
||||
"integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"strip-bom": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
|
||||
"integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
|
||||
"dev": true
|
||||
},
|
||||
"strip-json-comments": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
|
||||
"integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"commondir": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
|
||||
|
|
@ -4447,6 +4674,12 @@
|
|||
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
|
||||
"dev": true
|
||||
},
|
||||
"conventional-commit-types": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/conventional-commit-types/-/conventional-commit-types-3.0.0.tgz",
|
||||
"integrity": "sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==",
|
||||
"dev": true
|
||||
},
|
||||
"convert-source-map": {
|
||||
"version": "1.7.0",
|
||||
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
|
||||
|
|
@ -4892,6 +5125,22 @@
|
|||
"integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=",
|
||||
"dev": true
|
||||
},
|
||||
"cz-conventional-changelog": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-3.1.0.tgz",
|
||||
"integrity": "sha512-SCwPPOF+7qMh1DZkJhrwaxCvZzPaz2E9BwQzcZwBuHlpcJj9zzz7K5vADQRhHuxStaHZFSLbDlZEdcls4bKu7Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@commitlint/load": ">6.1.1",
|
||||
"chalk": "^2.4.1",
|
||||
"commitizen": "^4.0.3",
|
||||
"conventional-commit-types": "^3.0.0",
|
||||
"lodash.map": "^4.5.1",
|
||||
"longest": "^2.0.1",
|
||||
"right-pad": "^1.0.1",
|
||||
"word-wrap": "^1.0.3"
|
||||
}
|
||||
},
|
||||
"dashdash": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
|
||||
|
|
@ -4956,6 +5205,12 @@
|
|||
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
|
||||
"dev": true
|
||||
},
|
||||
"dedent": {
|
||||
"version": "0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
|
||||
"integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
|
||||
"dev": true
|
||||
},
|
||||
"deep-equal": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
|
||||
|
|
@ -5239,6 +5494,18 @@
|
|||
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
|
||||
"dev": true
|
||||
},
|
||||
"detect-file": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
|
||||
"integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
|
||||
"dev": true
|
||||
},
|
||||
"detect-indent": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz",
|
||||
"integrity": "sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==",
|
||||
"dev": true
|
||||
},
|
||||
"detect-newline": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz",
|
||||
|
|
@ -5550,9 +5817,9 @@
|
|||
}
|
||||
},
|
||||
"element-ui": {
|
||||
"version": "2.13.0",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.13.0.tgz",
|
||||
"integrity": "sha512-KYsHWsBXYbLELS8cdfvgJTOMSUby3UEjvsPV1V1VmgJ/DdkOAS4z3MiOrPxrT9w2Cc5lZ4eVSQiGhYFR5NVChw==",
|
||||
"version": "2.13.1",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.13.1.tgz",
|
||||
"integrity": "sha512-jyvJmXa2c6ElRc4NOw4V1vnjHsvfzTRhbwElZ68CyF9by2F64B+AJRzujg/HJgXCimHwd2g1Av9D04EP3mWymg==",
|
||||
"requires": {
|
||||
"async-validator": "~1.8.1",
|
||||
"babel-helper-vue-jsx-merge-props": "^2.0.0",
|
||||
|
|
@ -6317,6 +6584,15 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"expand-tilde": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
|
||||
"integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"homedir-polyfill": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"expect": {
|
||||
"version": "24.9.0",
|
||||
"resolved": "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz",
|
||||
|
|
@ -6688,6 +6964,22 @@
|
|||
"pkg-dir": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"find-node-modules": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.0.0.tgz",
|
||||
"integrity": "sha512-8MWIBRgJi/WpjjfVXumjPKCtmQ10B+fjx6zmSA+770GMJirLhWIzg8l763rhjl9xaeaHbnxPNRQKq2mgMhr+aw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"findup-sync": "^3.0.0",
|
||||
"merge": "^1.2.1"
|
||||
}
|
||||
},
|
||||
"find-root": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
|
||||
"integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==",
|
||||
"dev": true
|
||||
},
|
||||
"find-up": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
|
||||
|
|
@ -6697,6 +6989,18 @@
|
|||
"locate-path": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"findup-sync": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz",
|
||||
"integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"detect-file": "^1.0.0",
|
||||
"is-glob": "^4.0.0",
|
||||
"micromatch": "^3.0.4",
|
||||
"resolve-dir": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"flat": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz",
|
||||
|
|
@ -7504,6 +7808,40 @@
|
|||
"integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
|
||||
"dev": true
|
||||
},
|
||||
"global-dirs": {
|
||||
"version": "0.1.1",
|
||||
"resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
|
||||
"integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ini": "^1.3.4"
|
||||
}
|
||||
},
|
||||
"global-modules": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
|
||||
"integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"global-prefix": "^1.0.1",
|
||||
"is-windows": "^1.0.1",
|
||||
"resolve-dir": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"global-prefix": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
|
||||
"integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"expand-tilde": "^2.0.2",
|
||||
"homedir-polyfill": "^1.0.1",
|
||||
"ini": "^1.3.4",
|
||||
"is-windows": "^1.0.1",
|
||||
"which": "^1.2.14"
|
||||
}
|
||||
},
|
||||
"globals": {
|
||||
"version": "11.12.0",
|
||||
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
|
||||
|
|
@ -7728,6 +8066,15 @@
|
|||
"minimalistic-crypto-utils": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"homedir-polyfill": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
|
||||
"integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"parse-passwd": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"hoopy": {
|
||||
"version": "0.1.4",
|
||||
"resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
|
||||
|
|
@ -8544,6 +8891,12 @@
|
|||
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
|
||||
"dev": true
|
||||
},
|
||||
"is-utf8": {
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
|
||||
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
|
||||
"dev": true
|
||||
},
|
||||
"is-valid-glob": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
|
||||
|
|
@ -9710,6 +10063,12 @@
|
|||
"integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=",
|
||||
"dev": true
|
||||
},
|
||||
"lodash.map": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz",
|
||||
"integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=",
|
||||
"dev": true
|
||||
},
|
||||
"lodash.mapvalues": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz",
|
||||
|
|
@ -9760,6 +10119,12 @@
|
|||
"integrity": "sha512-Sgr5lbboAUBo3eXCSPL4/KoVz3ROKquOjcctxmHIt+vol2DrqTQe3SwkKKuYhEiWB5kYa13YyopJ69deJ1irzQ==",
|
||||
"dev": true
|
||||
},
|
||||
"longest": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/longest/-/longest-2.0.1.tgz",
|
||||
"integrity": "sha1-eB4YMpaqlPbU2RbcM10NF676I/g=",
|
||||
"dev": true
|
||||
},
|
||||
"loose-envify": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
|
||||
|
|
@ -9916,6 +10281,12 @@
|
|||
"readable-stream": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"merge": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz",
|
||||
"integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==",
|
||||
"dev": true
|
||||
},
|
||||
"merge-descriptors": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
|
||||
|
|
@ -10185,14 +10556,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"mockjs": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mockjs/-/mockjs-1.1.0.tgz",
|
||||
"integrity": "sha512-eQsKcWzIaZzEZ07NuEyO4Nw65g0hdWAyurVol1IPl1gahRwY+svqzfgfey8U8dahLwG44d6/RwEzuK52rSa/JQ==",
|
||||
"requires": {
|
||||
"commander": "*"
|
||||
}
|
||||
},
|
||||
"move-concurrently": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
|
||||
|
|
@ -10928,6 +11291,12 @@
|
|||
"json-parse-better-errors": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"parse-passwd": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
|
||||
"integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
|
||||
"dev": true
|
||||
},
|
||||
"parse5": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz",
|
||||
|
|
@ -11871,11 +12240,6 @@
|
|||
"integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
|
||||
"dev": true
|
||||
},
|
||||
"qs": {
|
||||
"version": "6.9.1",
|
||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz",
|
||||
"integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA=="
|
||||
},
|
||||
"query-string": {
|
||||
"version": "4.3.4",
|
||||
"resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
|
||||
|
|
@ -12295,12 +12659,32 @@
|
|||
"resolve-from": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"resolve-dir": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
|
||||
"integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"expand-tilde": "^2.0.0",
|
||||
"global-modules": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"resolve-from": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
|
||||
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
|
||||
"dev": true
|
||||
},
|
||||
"resolve-global": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz",
|
||||
"integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"global-dirs": "^0.1.1"
|
||||
}
|
||||
},
|
||||
"resolve-url": {
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
|
||||
|
|
@ -12341,6 +12725,12 @@
|
|||
"integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=",
|
||||
"dev": true
|
||||
},
|
||||
"right-pad": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/right-pad/-/right-pad-1.0.1.tgz",
|
||||
"integrity": "sha1-jKCMLLtbVedNr6lr9/0aJ9VoyNA=",
|
||||
"dev": true
|
||||
},
|
||||
"rimraf": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
|
||||
|
|
@ -12495,9 +12885,9 @@
|
|||
}
|
||||
},
|
||||
"screenfull": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.0.0.tgz",
|
||||
"integrity": "sha512-yShzhaIoE9OtOhWVyBBffA6V98CDCoyHTsp8228blmqYy1Z5bddzE/4FPiJKlr8DVR4VBiiUyfPzIQPIYDkeMA=="
|
||||
"version": "5.0.2",
|
||||
"resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.0.2.tgz",
|
||||
"integrity": "sha512-cCF2b+L/mnEiORLN5xSAz6H3t18i2oHh9BA8+CQlAh5DRw2+NFAGQJOSYbcGw8B2k04g/lVvFcfZ83b3ysH5UQ=="
|
||||
},
|
||||
"select-hose": {
|
||||
"version": "2.0.0",
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
"start": "npm run serve",
|
||||
"dev": "npm run serve",
|
||||
"build": "vue-cli-service build",
|
||||
"build:nomock": "vue-cli-service build --mode nomock",
|
||||
"build:preview": "NODE_OPTIONS=--max_old_space_size=4096 vue-cli-service build --mode preview",
|
||||
"lint": "vue-cli-service lint --fix",
|
||||
"test:unit": "vue-cli-service test:unit"
|
||||
|
|
@ -32,9 +31,7 @@
|
|||
"lodash": "^4.17.15",
|
||||
"lowdb": "^1.0.0",
|
||||
"marked": "^0.8.0",
|
||||
"mockjs": "^1.1.0",
|
||||
"nprogress": "^0.2.0",
|
||||
"qs": "^6.9.1",
|
||||
"quill": "^1.3.7",
|
||||
"screenfull": "^5.0.2",
|
||||
"simplemde": "^1.11.2",
|
||||
|
|
|
|||
|
|
@ -4,16 +4,6 @@ export default {
|
|||
icon: 'plug',
|
||||
children: (pre => [
|
||||
{ path: `${pre}index`, title: '插件', icon: 'home' },
|
||||
{
|
||||
path: `${pre}mock`,
|
||||
title: '模拟数据',
|
||||
icon: 'globe',
|
||||
children: [
|
||||
{ path: `${pre}mock/ajax`, title: '拦截异步请求' },
|
||||
{ path: `${pre}mock/dpd`, title: 'DPD 规则' },
|
||||
{ path: `${pre}mock/dtd`, title: 'DTD 规则' }
|
||||
]
|
||||
},
|
||||
{
|
||||
path: `${pre}import`,
|
||||
title: '导入',
|
||||
|
|
|
|||
|
|
@ -1,33 +0,0 @@
|
|||
const db = [
|
||||
{ id: '1', name: '用户 1', address: '上海市普陀区金沙江路 1518 弄' },
|
||||
{ id: '2', name: '用户 2', address: '上海市普陀区金沙江路 1517 弄' },
|
||||
{ id: '3', name: '用户 3', address: '上海市普陀区金沙江路 1519 弄' },
|
||||
{ id: '4', name: '用户 4', address: '上海市普陀区金沙江路 1516 弄' }
|
||||
]
|
||||
|
||||
export default [
|
||||
{
|
||||
path: '/api/demo/business/issues/142/fetch.*',
|
||||
method: 'get',
|
||||
handle () {
|
||||
return {
|
||||
code: 0,
|
||||
msg: '获取数据成功',
|
||||
data: {
|
||||
list: db
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/api/demo/business/issues/142/detail.*',
|
||||
method: 'get',
|
||||
handle ({ params }) {
|
||||
return {
|
||||
code: 0,
|
||||
msg: '获取数据成功',
|
||||
data: db.find(e => e.id === params.id)
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
export default [
|
||||
{
|
||||
path: '/api/demo/business/table/1/fetch.*',
|
||||
method: 'get',
|
||||
handle ({ params, Repeat }) {
|
||||
let { pageSize } = params
|
||||
return {
|
||||
code: 0,
|
||||
msg: '获取数据成功',
|
||||
data: {
|
||||
page: {
|
||||
total: 1000
|
||||
},
|
||||
list: Repeat(pageSize, {
|
||||
'key': '@guid',
|
||||
'value|1': [10, 100, 200, 500],
|
||||
'type': '@boolean',
|
||||
'admin': '@cname',
|
||||
'adminNote': '@cparagraph(0.5)',
|
||||
'dateTimeCreat': '@datetime',
|
||||
'used': '@boolean',
|
||||
'dateTimeUse': '@datetime'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
export default [
|
||||
{
|
||||
path: '/api/demo/plugins/mock/ajax',
|
||||
method: 'get',
|
||||
handle ({ Repeat }) {
|
||||
return {
|
||||
code: 0,
|
||||
msg: '获取数据成功',
|
||||
data: {
|
||||
list: Repeat('4-10', {
|
||||
'id|+1': 1,
|
||||
'name': '@CNAME',
|
||||
'star|1-5': '★',
|
||||
'delFlag|1': [0, 1],
|
||||
'creatDate': '@DATE',
|
||||
'address': '@CITY',
|
||||
'zip': '@ZIP'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
const userDB = [
|
||||
{ username: 'admin', password: 'admin', uuid: 'admin-uuid', name: 'Admin' },
|
||||
{ username: 'editor', password: 'editor', uuid: 'editor-uuid', name: 'Editor' },
|
||||
{ username: 'user1', password: 'user1', uuid: 'user1-uuid', name: 'User1' }
|
||||
]
|
||||
|
||||
export default [
|
||||
{
|
||||
path: '/api/login',
|
||||
method: 'post',
|
||||
handle ({ body }) {
|
||||
const user = userDB.find(e => e.username === body.username && e.password === body.password)
|
||||
if (user) {
|
||||
return {
|
||||
code: 0,
|
||||
msg: '登录成功',
|
||||
data: {
|
||||
...user,
|
||||
token: '8dfhassad0asdjwoeiruty'
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return {
|
||||
code: 401,
|
||||
msg: '用户名或密码错误',
|
||||
data: {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
import Mock from 'mockjs'
|
||||
import qs from 'qs'
|
||||
import withCredentials from './patch/withCredentials'
|
||||
|
||||
/* 补丁 */
|
||||
withCredentials(Mock)
|
||||
|
||||
/* Mock 默认配置 */
|
||||
Mock.setup({ timeout: '200-300' })
|
||||
|
||||
/* 扩展 [生成器] */
|
||||
const Generator = (prop, template) => {
|
||||
const obj = {}
|
||||
obj[prop] = [template]
|
||||
return Mock.mock(obj)
|
||||
}
|
||||
|
||||
/* 扩展 [循环] */
|
||||
const Repeat = (num, itemTemplate) => Generator(`data|${num}`, itemTemplate).data
|
||||
|
||||
const CustomExtends = {
|
||||
Generator,
|
||||
Repeat,
|
||||
Mock,
|
||||
Random: Mock.Random
|
||||
}
|
||||
|
||||
const extend = (prop, value) => {
|
||||
CustomExtends[prop] = value
|
||||
}
|
||||
|
||||
/* 装配配置组 */
|
||||
const wired = ({ url, type, body }) => ({
|
||||
method: type,
|
||||
params: qs.parse(url.split('?').length > 1 ? url.split('?')[1] : ''),
|
||||
body: JSON.parse(body),
|
||||
url: qs.parse(url.split('?')[0]),
|
||||
...CustomExtends
|
||||
})
|
||||
|
||||
const setup = (path, method, handle) => {
|
||||
Mock.mock(
|
||||
RegExp(path),
|
||||
method,
|
||||
typeof handle === 'function' ? o => handle(wired(o)) : handle
|
||||
)
|
||||
}
|
||||
|
||||
const load = (collection) => {
|
||||
collection.map(({ path, method, handle }) => {
|
||||
if (method === '*') {
|
||||
method = [
|
||||
'get',
|
||||
'head',
|
||||
'post',
|
||||
'put',
|
||||
'delete',
|
||||
'connect',
|
||||
'options',
|
||||
'trace',
|
||||
'patch'
|
||||
]
|
||||
}
|
||||
if (typeof method === 'string' && method.indexOf('|') > -1) method = method.split('|')
|
||||
if (method instanceof Array) {
|
||||
method.map(item => setup(path, item, handle))
|
||||
} else {
|
||||
setup(path, method, handle)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export default { setup, load, extend }
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
export default function (Mock) {
|
||||
// http://cnine.me/note/FrontEnd/mock-lose-cookies-dbg.html
|
||||
Mock.XHR.prototype.__send = Mock.XHR.prototype.send
|
||||
Mock.XHR.prototype.send = function () {
|
||||
if (this.custom.xhr) {
|
||||
this.custom.xhr.withCredentials = this.withCredentials || false
|
||||
// https://github.com/d2-projects/d2-admin/issues/254
|
||||
if (!this.custom.async) {
|
||||
this.custom.xhr.responseType = this.responseType
|
||||
}
|
||||
}
|
||||
this.__send.apply(this, arguments)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
import d2Mock from './d2-mock'
|
||||
|
||||
const req = context => context.keys().map(context)
|
||||
const options = req(require.context('./api/', true, /\.js$/))
|
||||
.filter(e => e.default)
|
||||
.map(e => e.default)
|
||||
|
||||
options.forEach(option => {
|
||||
d2Mock.load(option)
|
||||
})
|
||||
|
|
@ -21,9 +21,6 @@ export default {
|
|||
{ path: 'import/csv', name: `${pre}import-csv`, component: _import('demo/plugins/import/csv.vue'), meta: { ...meta, title: '导入 csv' } },
|
||||
{ path: 'import/xlsx', name: `${pre}import-xlsx`, component: _import('demo/plugins/import/xlsx.vue'), meta: { ...meta, title: '导入 xlsx' } },
|
||||
{ path: 'index', name: `${pre}index`, component: _import('demo/plugins/index'), meta: { ...meta, title: '插件首页' } },
|
||||
{ path: 'js-cookie', name: `${pre}js-cookie`, component: _import('demo/plugins/js-cookie'), meta: { ...meta, title: 'Cookie' } },
|
||||
{ path: 'mock/ajax', name: `${pre}mock-ajax`, component: _import('demo/plugins/mock/ajax.vue'), meta: { ...meta, title: '模拟数据' } },
|
||||
{ path: 'mock/dpd', name: `${pre}mock-dpd`, component: _import('demo/plugins/mock/dpd.vue'), meta: { ...meta, title: 'mock dpd规则' } },
|
||||
{ path: 'mock/dtd', name: `${pre}mock-dtd`, component: _import('demo/plugins/mock/dtd.vue'), meta: { ...meta, title: 'mock dtd规则' } }
|
||||
{ path: 'js-cookie', name: `${pre}js-cookie`, component: _import('demo/plugins/js-cookie'), meta: { ...meta, title: 'Cookie' } }
|
||||
])('demo-plugins-')
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,37 +0,0 @@
|
|||
import Mock from 'mockjs'
|
||||
|
||||
const mockData = Mock.mock({
|
||||
'data|3-6': [{
|
||||
'id|+1': 1,
|
||||
'name': '@CNAME',
|
||||
'creatDate': '@DATE',
|
||||
'address': '@CITY',
|
||||
'zip': '@ZIP'
|
||||
}]
|
||||
})
|
||||
|
||||
export default {
|
||||
data: mockData.data,
|
||||
columns: [
|
||||
{
|
||||
label: 'ID',
|
||||
prop: 'id'
|
||||
},
|
||||
{
|
||||
label: '名称',
|
||||
prop: 'name'
|
||||
},
|
||||
{
|
||||
label: '创建日期',
|
||||
prop: 'creatDate'
|
||||
},
|
||||
{
|
||||
label: '地址',
|
||||
prop: 'address'
|
||||
},
|
||||
{
|
||||
label: '邮编',
|
||||
prop: 'zip'
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -25,14 +25,21 @@
|
|||
<script>
|
||||
import Vue from 'vue'
|
||||
import pluginExport from '@d2-projects/vue-table-export'
|
||||
import table from './data'
|
||||
Vue.use(pluginExport)
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
table: {
|
||||
columns: table.columns,
|
||||
data: table.data,
|
||||
columns: [
|
||||
{ label: 'ID', prop: 'id' },
|
||||
{ label: '名称', prop: 'name' },
|
||||
{ label: '创建日期', prop: 'creatDate' },
|
||||
{ label: '地址', prop: 'address' },
|
||||
{ label: '邮编', prop: 'zip' }
|
||||
],
|
||||
data: [
|
||||
{ id: 1, name: 'Lucy', creatDate: '2020-05-07', address: 'Address', zip: '000000' }
|
||||
],
|
||||
size: 'mini',
|
||||
stripe: true,
|
||||
border: true
|
||||
|
|
|
|||
|
|
@ -1,56 +0,0 @@
|
|||
<template>
|
||||
<d2-container>
|
||||
<div slot="header">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="primary"
|
||||
@click="ajax">
|
||||
<d2-icon name="paper-plane"/>
|
||||
发送请求
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
v-bind="table"
|
||||
style="width: 100%">
|
||||
<el-table-column
|
||||
v-for="(item, index) in table.columns"
|
||||
:key="index"
|
||||
:prop="item.prop"
|
||||
:label="item.label">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</d2-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { pluginMocksAjax } from '@api/demo.plugins.mocks.ajax'
|
||||
export default {
|
||||
name: 'demo-plugins-mock-ajax',
|
||||
data () {
|
||||
return {
|
||||
table: {
|
||||
columns: [],
|
||||
data: [],
|
||||
size: 'mini',
|
||||
stripe: true,
|
||||
border: true
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
ajax () {
|
||||
pluginMocksAjax()
|
||||
.then(res => {
|
||||
this.table.columns = Object.keys(res.list[0]).map(e => ({
|
||||
label: e,
|
||||
prop: e
|
||||
}))
|
||||
this.table.data = res.list
|
||||
})
|
||||
.catch(() => {
|
||||
// 错误情况
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
<template>
|
||||
<el-card shadow="never" class="d2-mb">
|
||||
<el-row type="flex" justify="end" slot="header">
|
||||
<el-button type="text" size="mini">{{title}}</el-button>
|
||||
<el-tooltip content="重新 mock 数据" placement="top-end">
|
||||
<el-button type="primary" size="mini" @click="$emit('reload')" class="d2-fr">刷新</el-button>
|
||||
</el-tooltip>
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="12">
|
||||
<div class="col col-l">
|
||||
<d2-highlight :code="code"/>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<div class="col col-r">
|
||||
<d2-highlight :code="mock"/>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'd2-demo-mock-card',
|
||||
props: {
|
||||
title: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: 'Mock Demo'
|
||||
},
|
||||
code: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: ''
|
||||
},
|
||||
mock: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: ''
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.col {
|
||||
padding: 20px;
|
||||
border-radius: 4px;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
font-size: 16px;
|
||||
}
|
||||
.col-l {
|
||||
background-color: lighten($color-info, 40%);
|
||||
border-color: lighten($color-info, 35%);
|
||||
}
|
||||
.col-r {
|
||||
background-color: lighten($color-success, 47%);
|
||||
border-color: lighten($color-success, 40%);
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
/* eslint-disable */
|
||||
export default [
|
||||
// 字符串
|
||||
{
|
||||
title: "占位符演示",
|
||||
json: {
|
||||
"name": {
|
||||
first: '@FIRST',
|
||||
middle: '@FIRST',
|
||||
last: '@LAST',
|
||||
full: '@first @middle @last'
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,115 +0,0 @@
|
|||
/* eslint-disable */
|
||||
export default [
|
||||
// 字符串
|
||||
{
|
||||
title: "复制1-10次固定字符串",
|
||||
json: {
|
||||
"string|1-10": "★"
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "复制3次",
|
||||
json: {
|
||||
"string|3": "Ha"
|
||||
}
|
||||
},
|
||||
// 数字
|
||||
{
|
||||
title: "范围随机取值",
|
||||
json: {
|
||||
"number|1-100": 50
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "累加1",
|
||||
json: {
|
||||
"number|+1": 10
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "累加2",
|
||||
json: {
|
||||
"number|+2": 10
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "浮点数",
|
||||
json: {
|
||||
"number1|1-100.1-10": 1,
|
||||
"number2|123.1-10": 1,
|
||||
"number3|123.3": 1,
|
||||
"number4|123.10": 1.123
|
||||
}
|
||||
},
|
||||
// 布尔值
|
||||
{
|
||||
title: "true 的概率是 1/2",
|
||||
json: {
|
||||
"boolean|1": true
|
||||
}
|
||||
},
|
||||
// 对象
|
||||
{
|
||||
title: '随机选择3个属性',
|
||||
json: {
|
||||
"obj|3": {
|
||||
name: 'FairyEver',
|
||||
use: 'vue.js',
|
||||
sex: 1,
|
||||
qq: '1711467488',
|
||||
tel: '123-4567-8910',
|
||||
city: 'beijing',
|
||||
mail: '1711467488liyang@gmail.com',
|
||||
github: 'https://github.com/d2-projects',
|
||||
blog: 'http://www.fairyever.com/',
|
||||
creatDate: '2018-1-1',
|
||||
updateDate: '2018-1-2',
|
||||
delFlag: 0
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '随机选择4-8个属性',
|
||||
json: {
|
||||
"obj|4-8": {
|
||||
name: 'FairyEver',
|
||||
use: 'vue.js',
|
||||
sex: 1,
|
||||
qq: '1711467488',
|
||||
tel: '123-4567-8910',
|
||||
city: 'beijing',
|
||||
mail: '1711467488liyang@gmail.com',
|
||||
github: 'https://github.com/FairyEver',
|
||||
blog: 'http://www.fairyever.com/',
|
||||
creatDate: '2018-1-1',
|
||||
updateDate: '2018-1-2',
|
||||
delFlag: 0
|
||||
}
|
||||
}
|
||||
},
|
||||
// 数组
|
||||
{
|
||||
title: '随机选1个',
|
||||
json: {
|
||||
"arr|1": ['1-vue', '2-react', '3-angular', '4-node', '5-java']
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '顺序选1个',
|
||||
json: {
|
||||
"arr|+1": ['1-vue', '2-react', '3-angular', '4-node', '5-java']
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '重复3次',
|
||||
json: {
|
||||
"arr|3": ['o', 'o - o', 'o - o - o']
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '重复2-10次',
|
||||
json: {
|
||||
"arr|2-10": ['-', '----']
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
<template>
|
||||
<d2-container>
|
||||
<template slot="header">数据占位符</template>
|
||||
<d2-markdown :source="doc" class="d2-mb"/>
|
||||
<d2-demo-mock-card
|
||||
v-for="(item, index) in settingDPD"
|
||||
:key="index"
|
||||
:title="item.title"
|
||||
:code="JSON.stringify(item.json, null, 2)"
|
||||
:mock="mockResult[index]"
|
||||
style="margin-bottom: 0px !important;"
|
||||
@reload="doMock(index)">
|
||||
</d2-demo-mock-card>
|
||||
</d2-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Vue from 'vue'
|
||||
import { cloneDeep } from 'lodash'
|
||||
import Mock from 'mockjs'
|
||||
import settingDPD from './data/settingDPD'
|
||||
import doc from './md/doc.md'
|
||||
export default {
|
||||
components: {
|
||||
'd2-demo-mock-card': () => import('./components/d2-demo-mock-card')
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
mockResult: [],
|
||||
settingDPD,
|
||||
settingDPDClone: cloneDeep(settingDPD),
|
||||
doc
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.settingDPD.forEach((e, i) => {
|
||||
this.doMock(i)
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
doMock (n = 0) {
|
||||
Vue.set(this.mockResult, n, JSON.stringify(Mock.mock(this.settingDPDClone[n].json), null, 2))
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
<template>
|
||||
<d2-container>
|
||||
<template slot="header">数据模板</template>
|
||||
<d2-markdown :source="doc" class="d2-mb"/>
|
||||
<d2-demo-mock-card
|
||||
v-for="(item, index) in settingDTD"
|
||||
:key="index"
|
||||
:title="item.title"
|
||||
:code="JSON.stringify(item.json, null, 2)"
|
||||
:mock="mockResult[index]"
|
||||
@reload="doMock(index)">
|
||||
</d2-demo-mock-card>
|
||||
<d2-demo-mock-card
|
||||
:title="fn.title"
|
||||
:code="fn.code"
|
||||
:mock="fn.mocked"
|
||||
@reload="fnMock()">
|
||||
</d2-demo-mock-card>
|
||||
<d2-demo-mock-card
|
||||
:title="regexp.title"
|
||||
:code="regexp.code"
|
||||
:mock="regexp.mocked"
|
||||
style="margin-bottom: 0px !important;"
|
||||
@reload="regexpMock()">
|
||||
</d2-demo-mock-card>
|
||||
</d2-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Vue from 'vue'
|
||||
import { cloneDeep } from 'lodash'
|
||||
import Mock from 'mockjs'
|
||||
import settingDTD from './data/settingDTD'
|
||||
import regexp from './mixins/regexp'
|
||||
import fn from './mixins/function'
|
||||
import doc from './md/doc.md'
|
||||
export default {
|
||||
mixins: [
|
||||
regexp,
|
||||
fn
|
||||
],
|
||||
components: {
|
||||
'd2-demo-mock-card': () => import('./components/d2-demo-mock-card')
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
mockResult: [],
|
||||
settingDTD,
|
||||
settingDTDClone: cloneDeep(settingDTD),
|
||||
doc
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.settingDTD.forEach((e, i) => {
|
||||
this.doMock(i)
|
||||
})
|
||||
this.fnMock()
|
||||
this.regexpMock()
|
||||
},
|
||||
methods: {
|
||||
doMock (n = 0) {
|
||||
Vue.set(this.mockResult, n, JSON.stringify(Mock.mock(this.settingDTDClone[n].json), null, 2))
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
你可以点击每个演示卡片右上角的刷新按钮检查每次 `mock` 不同的结果
|
||||
|
||||
官方演示页面 [http://mockjs.com/examples.html](http://mockjs.com/examples.html)
|
||||
|
||||
官方 `Wiki` [https://github.com/nuysoft/Mock/wiki/Getting-Started](https://github.com/nuysoft/Mock/wiki/Getting-Started)
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
/* eslint-disable */
|
||||
import Mock from 'mockjs'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
// 测试函数
|
||||
fn: {
|
||||
title: '函数',
|
||||
code: `{
|
||||
"name": "FairyEver",
|
||||
"say": function() {
|
||||
return 'I AM ' + this.name
|
||||
}
|
||||
}`,
|
||||
json: {
|
||||
"name": "FairyEver",
|
||||
"say": function() {
|
||||
return 'I AM ' + this.name
|
||||
}
|
||||
},
|
||||
mocked: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
fnMock () {
|
||||
this.fn.mocked = JSON.stringify(Mock.mock(this.fn.json), null, 2)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
/* eslint-disable */
|
||||
import Mock from 'mockjs'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
// 测试正则表达式
|
||||
regexp: {
|
||||
title: '正则表达式',
|
||||
code: `{
|
||||
'regexp1': /[a-z][A-Z][0-9]/,
|
||||
'regexp2': /\w\W\s\S\d\D/,
|
||||
'regexp3': /\d{5,10}/
|
||||
}`,
|
||||
json: {
|
||||
'regexp1': /[a-z][A-Z][0-9]/,
|
||||
'regexp2': /\w\W\s\S\d\D/,
|
||||
'regexp3': /\d{5,10}/
|
||||
},
|
||||
mocked: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
regexpMock () {
|
||||
this.regexp.mocked = JSON.stringify(Mock.mock(this.regexp.json), null, 2)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -145,15 +145,6 @@ module.exports = {
|
|||
// 重新设置 alias
|
||||
config.resolve.alias
|
||||
.set('@api', resolve('src/api'))
|
||||
// 判断环境加入模拟数据
|
||||
// 已适配多页
|
||||
if (process.env.VUE_APP_BUILD_MODE !== 'NOMOCK') {
|
||||
const multiEntry = keys(pages || {})
|
||||
const entries = multiEntry.length ? multiEntry : ['app']
|
||||
each(entries, entry => {
|
||||
config.entry(entry).add('@/mock').end()
|
||||
})
|
||||
}
|
||||
// 分析工具
|
||||
if (process.env.npm_config_report) {
|
||||
config
|
||||
|
|
|
|||
Loading…
Reference in New Issue