diff --git a/.eslintrc.js b/.eslintrc.js index 76af57f..dae96b2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -16,11 +16,51 @@ module.exports = { ecmaVersion: 'latest', parser: '@typescript-eslint/parser', sourceType: 'module', + ecmaFeatures: { + jsx: true, + }, }, plugins: ['vue', '@typescript-eslint'], globals: { defineProps: 'readonly', defineEmits: 'readonly', }, - rules: {}, + rules: { + 'no-console': 'off', // 禁止调用console对象的方法。 + '@typescript-eslint/no-explicit-any': 'off', // 禁止使用 any 类型 + 'no-use-before-define': 'off', + '@typescript-eslint/no-use-before-define': 'off', + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/no-empty-function': ['off'], // 关闭空函数警告 + '@typescript-eslint/no-inferrable-types': 'off', // 可以轻松推断的显式类型可能会增加不必要的冗长 + '@typescript-eslint/no-namespace': 'off', // 禁止使用自定义 TypeScript 模块和命名空间 + '@typescript-eslint/ban-types': 'off', // 禁止使用特定类型 + 'vue/multi-word-component-names': 'off', // 要求组件名称始终为 “-” 链接的单词 + 'vue/no-v-html': 'off', // 禁止使用 v-html + 'no-undef': 'off', + 'no-redeclare': 'off', + 'no-self-assign': 'off', + 'no-sparse-arrays': 'off', + 'vue/valid-v-for': 'off', + 'vue/no-unused-vars': 'off', + 'vue/require-v-for-key': 'off', + 'no-useless-escape': 'off', + 'vue/require-explicit-emits': 'off', + 'no-case-declarations': 'off', // 不允许在 case 子句中使用词法声明 + //禁止非空断言非空断言是在变量后面添加一个感叹号(!),表示该变量一定存在,不会为 null 或 undefined + '@typescript-eslint/no-non-null-assertion': 'off', + 'vue/require-prop-types': 'off', + '@typescript-eslint/no-this-alias': 'off', + 'no-async-promise-executor': 'off', + 'vue/no-template-shadow': 'off', + 'vue/require-default-prop': 'off', // 此规则要求为每个 prop 为必填时,必须提供默认值 + '@typescript-eslint/no-unused-vars': [ + // // 禁止定义未使用的变量 + 'off', + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_', + }, + ], + }, } diff --git a/.prettierrc.js b/.prettierrc.js index 46a977e..13ff5f4 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,6 +1,8 @@ module.exports = { // 一行的字符数,如果超过会进行换行,默认为80 - printWidth: 100, + printWidth: 140, + // 缩进制表符宽度 | 空格数 + tabWidth: 2, // 行位是否使用分号,默认为true semi: false, vueIndentScriptAndStyle: true, diff --git a/commitlint.config.js b/commitlint.config.js index 7773289..d3d2b2d 100644 --- a/commitlint.config.js +++ b/commitlint.config.js @@ -2,82 +2,83 @@ // cz.config.js kk /** @type {import('cz-git').CommitizenGitOptions} */ module.exports = { - ignores: [commit => commit.includes("init")], - extends: ["@commitlint/config-conventional"], - // alias: { fd: 'docs: fix typos' }, - // messages: { - // type: 'Select the type of change that you\'re committing:', - // scope: 'Denote the SCOPE of this change (optional):', - // customScope: 'Denote the SCOPE of this chang e:', - // subject: 'Write a SHORT, IMPERATIVE tense description of the change:\n', - // body: 'Provide a LONGER description of the change (optional). Use "|" to break new line:\n', - // breaking: 'List any BREAKING CHANGES (optional). Use "|" to break new line:\n', - // footerPrefixsSelect: 'Select the ISSUES type of changeList by this change (optional):', - // customFooterPrefixs: 'Input ISSUES prefix:', - // footer: 'List any ISSUES by this change. E.g.: #31, #34:\n', - // confirmCommit: 'Are you sure you want to proceed with the commit above?' - // }, - prompt: { - // 中英文对照版 - messages: { - type: '选择你要提交的类型 :', - scope: '选择一个提交范围(可选):', - customScope: '请输入自定义的提交范围 :', - subject: '填写简短精炼的变更描述 :\n', - body: '填写更加详细的变更描述(可选)。使用 "|" 换行 :\n', - breaking: '列举非兼容性重大的变更(可选)。使用 "|" 换行 :\n', - footerPrefixesSelect: '选择关联issue前缀(可选):', - customFooterPrefix: '输入自定义issue前缀 :', - footer: '列举关联issue (可选) 例如: #31, #I3244 :\n', - confirmCommit: '是否提交或修改commit ?' - }, - types: [ - { value: '特性', name: '特性: 新增功能' }, - { value: '修复', name: '修复: 修复缺陷' }, - { value: '文档', name: '文档: 文档变更' }, - { value: '格式', name: '格式: 代码格式(不影响功能,例如空格、分号等格式修正)' }, - { value: '重构', name: '重构: 代码重构(不包括 bug 修复、功能新增)' }, - { value: '性能', name: '性能: 性能优化' }, - { value: '测试', name: '测试: 添加疏漏测试或已有测试改动' }, - { value: '构建', name: '构建: 构建流程、外部依赖变更(如升级 npm 包、修改 webpack 配置等)' }, - { value: '集成', name: '集成: 修改 CI 配置、脚本' }, - { value: '回退', name: '回退: 回滚 commit' }, - { value: '其他', name: '其他: 对构建过程或辅助工具和库的更改(不影响源文件、测试用例)' }, - - ], - // emptyScopesAlias: 'empty: 不填写', - // customScopesAlias: 'custom: 自定义', - - useEmoji: true, - // emojiAlign: 'center', - themeColorCode: '', - scopes: [], - allowCustomScopes: true, - allowEmptyScopes: true, - customScopesAlign: 'bottom', - customScopesAlias: 'custom', - emptyScopesAlias: 'empty', - upperCaseSubject: false, - markBreakingChangeMode: false, - allowBreakingChanges: ['feat', 'fix'], - breaklineNumber: 100, - breaklineChar: '|', - skipQuestions: [], - issuePrefixs: [{ value: 'closed', name: 'closed: ISSUES has been processed' }], - customIssuePrefixsAlign: 'top', - emptyIssuePrefixsAlias: 'skip', - customIssuePrefixsAlias: 'custom', - allowCustomIssuePrefixs: true, - allowEmptyIssuePrefixs: true, - confirmColorize: true, - maxHeaderLength: Infinity, - maxSubjectLength: Infinity, - minSubjectLength: 0, - scopeOverrides: undefined, - defaultBody: '', - defaultIssues: '', - defaultScope: '', - defaultSubject: '' - } + ignores: [(commit) => commit.includes('init')], + extends: ['@commitlint/config-conventional'], + // alias: { fd: 'docs: fix typos' }, + // messages: { + // type: 'Select the type of change that you\'re committing:', + // scope: 'Denote the SCOPE of this change (optional):', + // customScope: 'Denote the SCOPE of this chang e:', + // subject: 'Write a SHORT, IMPERATIVE tense description of the change:\n', + // body: 'Provide a LONGER description of the change (optional). Use "|" to break new line:\n', + // breaking: 'List any BREAKING CHANGES (optional). Use "|" to break new line:\n', + // footerPrefixsSelect: 'Select the ISSUES type of changeList by this change (optional):', + // customFooterPrefixs: 'Input ISSUES prefix:', + // footer: 'List any ISSUES by this change. E.g.: #31, #34:\n', + // confirmCommit: 'Are you sure you want to proceed with the commit above?' + // }, + prompt: { + // 中英文对照版 + messages: { + type: '选择你要提交的类型 :', + scope: '选择一个提交范围(可选):', + customScope: '请输入自定义的提交范围 :', + subject: '填写简短精炼的变更描述 :\n', + body: '填写更加详细的变更描述(可选)。使用 "|" 换行 :\n', + breaking: '列举非兼容性重大的变更(可选)。使用 "|" 换行 :\n', + footerPrefixesSelect: '选择关联issue前缀(可选):', + customFooterPrefix: '输入自定义issue前缀 :', + footer: '列举关联issue (可选) 例如: #31, #I3244 :\n', + confirmCommit: '是否提交或修改commit ?', + }, + types: [ + { value: '特性', name: '特性: 新增功能' }, + { value: '修复', name: '修复: 修复缺陷' }, + { value: '文档', name: '文档: 文档变更' }, + { value: '格式', name: '格式: 代码格式(不影响功能,例如空格、分号等格式修正)' }, + { value: '重构', name: '重构: 代码重构(不包括 bug 修复、功能新增)' }, + { value: '性能', name: '性能: 性能优化' }, + { value: '测试', name: '测试: 添加疏漏测试或已有测试改动' }, + { + value: '构建', + name: '构建: 构建流程、外部依赖变更(如升级 npm 包、修改 webpack 配置等)', + }, + { value: '集成', name: '集成: 修改 CI 配置、脚本' }, + { value: '回退', name: '回退: 回滚 commit' }, + { value: '其他', name: '其他: 对构建过程或辅助工具和库的更改(不影响源文件、测试用例)' }, + ], + // emptyScopesAlias: 'empty: 不填写', + // customScopesAlias: 'custom: 自定义', + useEmoji: true, + // emojiAlign: 'center', + themeColorCode: '', + scopes: [], + allowCustomScopes: true, + allowEmptyScopes: true, + customScopesAlign: 'bottom', + customScopesAlias: 'custom', + emptyScopesAlias: 'empty', + upperCaseSubject: false, + markBreakingChangeMode: false, + allowBreakingChanges: ['feat', 'fix'], + breaklineNumber: 100, + breaklineChar: '|', + skipQuestions: [], + issuePrefixs: [{ value: 'closed', name: 'closed: ISSUES has been processed' }], + customIssuePrefixsAlign: 'top', + emptyIssuePrefixsAlias: 'skip', + customIssuePrefixsAlias: 'custom', + allowCustomIssuePrefixs: true, + allowEmptyIssuePrefixs: true, + confirmColorize: true, + maxHeaderLength: Infinity, + maxSubjectLength: Infinity, + minSubjectLength: 0, + scopeOverrides: undefined, + defaultBody: '', + defaultIssues: '', + defaultScope: '', + defaultSubject: '', + }, } diff --git a/package.json b/package.json index d415d6f..23ebaf7 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "preview": "vite preview", "build:ts": "vue-tsc --noEmit --skipLibCheck && vite build", "lint": "eslint . --ext .vue,.js,.ts,.jsx,.tsx", - "lint:fix": "eslint . --ext .vue,.js,.ts,.jsx,.tsx --fix", + "lint:fix": "eslint . --ext .vue,.js,.ts,.jsx,.tsx --fix", "lint:prettier": "prettier --write \"src/**/*.{js,json,tsx,css,less,scss,vue,html,md}\"", "prepare": "husky install" }, @@ -61,6 +61,7 @@ "devDependencies": { "@commitlint/cli": "^17.3.0", "@commitlint/config-conventional": "^17.3.0", + "@element-plus/icons-vue": "^2.3.1", "@typescript-eslint/eslint-plugin": "^5.32.0", "@typescript-eslint/parser": "^5.32.0", "@vitejs/plugin-vue": "^3.0.0", @@ -96,6 +97,10 @@ } }, "lint-staged": { - "*.{vue,js,ts,jsx,tsx}": ["npm run lint","git add"] + "src/s*.{vue,js,ts,jsx,tsx}": [ + "npm run lint:prettier", + "npm run lint:fix", + "git add ." + ] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c5a4f2c..d5cb636 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -133,6 +133,9 @@ devDependencies: '@commitlint/config-conventional': specifier: ^17.3.0 version: 17.8.1 + '@element-plus/icons-vue': + specifier: ^2.3.1 + version: 2.3.1(vue@3.3.13) '@typescript-eslint/eslint-plugin': specifier: ^5.32.0 version: 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.56.0)(typescript@4.9.5) @@ -201,7 +204,7 @@ devDependencies: version: 0.7.3(vite@3.2.7)(vue@3.3.13) vite: specifier: ^3.0.0 - version: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + version: 3.2.7(@types/node@20.5.1)(sass@1.69.5) vite-plugin-compression: specifier: ^0.5.1 version: 0.5.1(vite@3.2.7) @@ -397,7 +400,7 @@ packages: lodash.merge: 4.6.2 lodash.uniq: 4.5.0 resolve-from: 5.0.0 - ts-node: 10.9.2(@types/node@18.19.3)(typescript@4.9.5) + ts-node: 10.9.2(@types/node@20.5.1)(typescript@4.9.5) typescript: 4.9.5 transitivePeerDependencies: - '@swc/core' @@ -534,7 +537,6 @@ packages: vue: ^3.2.0 dependencies: vue: 3.3.13(typescript@4.9.5) - dev: false /@esbuild/android-arm@0.15.18: resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} @@ -774,6 +776,7 @@ packages: dependencies: undici-types: 5.26.5 dev: true + optional: true /@types/node@20.10.5: resolution: {integrity: sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==} @@ -1121,7 +1124,7 @@ packages: vite: ^3.0.0 vue: ^3.2.25 dependencies: - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) vue: 3.3.13(typescript@4.9.5) dev: true @@ -2350,7 +2353,7 @@ packages: dependencies: '@types/node': 20.5.1 cosmiconfig: 8.3.6(typescript@4.9.5) - ts-node: 10.9.2(@types/node@18.19.3)(typescript@4.9.5) + ts-node: 10.9.2(@types/node@20.5.1)(typescript@4.9.5) typescript: 4.9.5 dev: true @@ -6672,7 +6675,7 @@ packages: typescript: 4.9.5 dev: true - /ts-node@10.9.2(@types/node@18.19.3)(typescript@4.9.5): + /ts-node@10.9.2(@types/node@20.5.1)(typescript@4.9.5): resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -6691,7 +6694,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.3 + '@types/node': 20.5.1 acorn: 8.11.2 acorn-walk: 8.3.1 arg: 4.1.3 @@ -6937,7 +6940,7 @@ packages: dependencies: acorn: 8.11.2 chokidar: 3.5.3 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) webpack-sources: 3.2.3 webpack-virtual-modules: 0.4.6 dev: true @@ -6961,7 +6964,7 @@ packages: dependencies: acorn: 8.11.2 chokidar: 3.5.3 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) webpack-sources: 3.2.3 webpack-virtual-modules: 0.4.6 dev: true @@ -7135,7 +7138,7 @@ packages: chalk: 4.1.2 debug: 4.3.4(supports-color@9.4.0) fs-extra: 10.1.0 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) transitivePeerDependencies: - supports-color dev: true @@ -7152,7 +7155,7 @@ packages: fs-extra: 10.1.0 magic-string: 0.25.9 pathe: 0.2.0 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) dev: true /vite-plugin-svg-icons@2.0.1(vite@3.2.7): @@ -7168,7 +7171,7 @@ packages: pathe: 0.2.0 svg-baker: 1.7.0 svgo: 2.8.0 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) transitivePeerDependencies: - supports-color dev: true @@ -7180,10 +7183,10 @@ packages: dependencies: '@vue/compiler-sfc': 3.3.13 magic-string: 0.25.9 - vite: 3.2.7(@types/node@18.19.3)(sass@1.69.5) + vite: 3.2.7(@types/node@20.5.1)(sass@1.69.5) dev: true - /vite@3.2.7(@types/node@18.19.3)(sass@1.69.5): + /vite@3.2.7(@types/node@20.5.1)(sass@1.69.5): resolution: {integrity: sha512-29pdXjk49xAP0QBr0xXqu2s5jiQIXNvE/xwd0vUizYT2Hzqe4BksNNoWllFVXJf4eLZ+UlVQmXfB4lWrc+t18g==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true @@ -7208,7 +7211,7 @@ packages: terser: optional: true dependencies: - '@types/node': 18.19.3 + '@types/node': 20.5.1 esbuild: 0.15.18 postcss: 8.4.32 resolve: 1.22.8 diff --git a/src/App.vue b/src/App.vue index ee50ef7..a0f634f 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,14 +5,14 @@ ")}catch(c){console&&console.log(c)}}a=function(){var c,s=document.createElement("div");s.innerHTML=l._iconfont_svg_string_3641732,(s=s.getElementsByTagName("svg")[0])&&(s.setAttribute("aria-hidden","true"),s.style.position="absolute",s.style.width=0,s.style.height=0,s.style.overflow="hidden",s=s,(c=document.body).firstChild?e(s,c.firstChild):c.appendChild(s))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(a,0):(t=function(){document.removeEventListener("DOMContentLoaded",t,!1),a()},document.addEventListener("DOMContentLoaded",t,!1)):document.attachEvent&&(i=a,h=l.document,o=!1,p(),h.onreadystatechange=function(){"complete"==h.readyState&&(h.onreadystatechange=null,d())})}function d(){o||(o=!0,i())}function p(){try{h.documentElement.doScroll("left")}catch(c){return void setTimeout(p,50)}d()}}(window); \ No newline at end of file +;(window._iconfont_svg_string_3641732 = + ''), + (function (l) { + var c = (c = document.getElementsByTagName('script'))[c.length - 1], + s = c.getAttribute('data-injectcss'), + c = c.getAttribute('data-disable-injectsvg') + if (!c) { + var a, + t, + i, + h, + o, + e = function (c, s) { + s.parentNode.insertBefore(c, s) + } + if (s && !l.__iconfont__svg__cssinject__) { + l.__iconfont__svg__cssinject__ = !0 + try { + document.write( + '', + ) + } catch (c) { + console && console.log(c) + } + } + ;(a = function () { + var c, + s = document.createElement('div') + ;(s.innerHTML = l._iconfont_svg_string_3641732), + (s = s.getElementsByTagName('svg')[0]) && + (s.setAttribute('aria-hidden', 'true'), + (s.style.position = 'absolute'), + (s.style.width = 0), + (s.style.height = 0), + (s.style.overflow = 'hidden'), + (s = s), + (c = document.body).firstChild ? e(s, c.firstChild) : c.appendChild(s)) + }), + document.addEventListener + ? ~['complete', 'loaded', 'interactive'].indexOf(document.readyState) + ? setTimeout(a, 0) + : ((t = function () { + document.removeEventListener('DOMContentLoaded', t, !1), a() + }), + document.addEventListener('DOMContentLoaded', t, !1)) + : document.attachEvent && + ((i = a), + (h = l.document), + (o = !1), + p(), + (h.onreadystatechange = function () { + 'complete' == h.readyState && ((h.onreadystatechange = null), d()) + })) + } + function d() { + o || ((o = !0), i()) + } + function p() { + try { + h.documentElement.doScroll('left') + } catch (c) { + return void setTimeout(p, 50) + } + d() + } + })(window) diff --git a/src/components/AvatarCropper/index.vue b/src/components/AvatarCropper/index.vue index 9e55365..92f55b0 100644 --- a/src/components/AvatarCropper/index.vue +++ b/src/components/AvatarCropper/index.vue @@ -1,86 +1,85 @@ diff --git a/src/components/CodeMirror/index.vue b/src/components/CodeMirror/index.vue index 67dce27..398eec8 100644 --- a/src/components/CodeMirror/index.vue +++ b/src/components/CodeMirror/index.vue @@ -1,121 +1,120 @@ diff --git a/src/components/CountTo/index.vue b/src/components/CountTo/index.vue index 8045a4f..ee1bea6 100644 --- a/src/components/CountTo/index.vue +++ b/src/components/CountTo/index.vue @@ -103,6 +103,9 @@ } this.$emit('mountedCallback') }, + unmounted() { + cancelAnimationFrame(this.rAF) + }, methods: { start() { this.localStartVal = this.startVal @@ -142,26 +145,15 @@ if (this.useEasing) { if (this.countDown) { - this.printVal = - this.localStartVal - - this.easingFn(progress, 0, this.localStartVal - this.endVal, this.localDuration) + this.printVal = this.localStartVal - this.easingFn(progress, 0, this.localStartVal - this.endVal, this.localDuration) } else { - this.printVal = this.easingFn( - progress, - this.localStartVal, - this.endVal - this.localStartVal, - this.localDuration, - ) + this.printVal = this.easingFn(progress, this.localStartVal, this.endVal - this.localStartVal, this.localDuration) } } else { if (this.countDown) { - this.printVal = - this.localStartVal - - (this.localStartVal - this.endVal) * (progress / this.localDuration) + this.printVal = this.localStartVal - (this.localStartVal - this.endVal) * (progress / this.localDuration) } else { - this.printVal = - this.localStartVal + - (this.endVal - this.localStartVal) * (progress / this.localDuration) + this.printVal = this.localStartVal + (this.endVal - this.localStartVal) * (progress / this.localDuration) } } if (this.countDown) { @@ -195,8 +187,5 @@ return this.prefix + x1 + x2 + this.suffix }, }, - destroyed() { - cancelAnimationFrame(this.rAF) - }, } diff --git a/src/components/CountTo/requestAnimationFrame.js b/src/components/CountTo/requestAnimationFrame.js index 6b7b5c9..06b42b7 100644 --- a/src/components/CountTo/requestAnimationFrame.js +++ b/src/components/CountTo/requestAnimationFrame.js @@ -23,10 +23,7 @@ if (isServer) { } prefix = prefixes[i] requestAnimationFrame = requestAnimationFrame || window[prefix + 'RequestAnimationFrame'] - cancelAnimationFrame = - cancelAnimationFrame || - window[prefix + 'CancelAnimationFrame'] || - window[prefix + 'CancelRequestAnimationFrame'] + cancelAnimationFrame = cancelAnimationFrame || window[prefix + 'CancelAnimationFrame'] || window[prefix + 'CancelRequestAnimationFrame'] } // 如果当前浏览器不支持requestAnimationFrame和cancelAnimationFrame,则会退到setTimeout diff --git a/src/components/DataScreen/Multiline/index.vue b/src/components/DataScreen/Multiline/index.vue index a4a885a..f8e6de1 100644 --- a/src/components/DataScreen/Multiline/index.vue +++ b/src/components/DataScreen/Multiline/index.vue @@ -1,269 +1,269 @@ diff --git a/src/components/DataScreen/barEcharts/index.vue b/src/components/DataScreen/barEcharts/index.vue index a8a34c2..97a1dd6 100644 --- a/src/components/DataScreen/barEcharts/index.vue +++ b/src/components/DataScreen/barEcharts/index.vue @@ -1,11 +1,11 @@ diff --git a/src/components/DataScreen/migrationEcharts/index.vue b/src/components/DataScreen/migrationEcharts/index.vue index 55c5f9c..5d2d3b6 100644 --- a/src/components/DataScreen/migrationEcharts/index.vue +++ b/src/components/DataScreen/migrationEcharts/index.vue @@ -5,7 +5,7 @@ import { geoJson } from './map.js' import * as echarts from 'echarts' import { EChartsType } from 'echarts/core' - import { onMounted, onUnmounted } from "vue"; + import { onMounted, onUnmounted } from 'vue' import { cityIconData } from './data.js' import logo from '@/assets/image/logo.png' const props = defineProps({ @@ -319,8 +319,8 @@ return chart } - onUnmounted(()=>{ - chart&&chart.dispose() + onUnmounted(() => { + chart && chart.dispose() }) onMounted(() => { diff --git a/src/components/DataScreen/pie/index.vue b/src/components/DataScreen/pie/index.vue index 696c082..acaabeb 100644 --- a/src/components/DataScreen/pie/index.vue +++ b/src/components/DataScreen/pie/index.vue @@ -1,36 +1,36 @@ diff --git a/src/components/PageWrapLayout/index.vue b/src/components/PageWrapLayout/index.vue index eb8f256..3f9e60d 100644 --- a/src/components/PageWrapLayout/index.vue +++ b/src/components/PageWrapLayout/index.vue @@ -9,5 +9,5 @@ diff --git a/src/components/RightClickMenu/index.vue b/src/components/RightClickMenu/index.vue index 7aa4a16..17c2656 100644 --- a/src/components/RightClickMenu/index.vue +++ b/src/components/RightClickMenu/index.vue @@ -1,12 +1,8 @@ diff --git a/src/components/Table/PropTable/index.vue b/src/components/Table/PropTable/index.vue index 4069b89..f2da72a 100644 --- a/src/components/Table/PropTable/index.vue +++ b/src/components/Table/PropTable/index.vue @@ -1,7 +1,7 @@ diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue index 363c33c..9926b25 100644 --- a/src/layout/components/TagsView/index.vue +++ b/src/layout/components/TagsView/index.vue @@ -1,22 +1,17 @@ diff --git a/src/views/echarts/graphEcharts/index.vue b/src/views/echarts/graphEcharts/index.vue index 1436940..7fa1181 100644 --- a/src/views/echarts/graphEcharts/index.vue +++ b/src/views/echarts/graphEcharts/index.vue @@ -5,210 +5,209 @@ diff --git a/src/views/echarts/migrationMap/index.vue b/src/views/echarts/migrationMap/index.vue index 9fab7ad..dcfaf50 100644 --- a/src/views/echarts/migrationMap/index.vue +++ b/src/views/echarts/migrationMap/index.vue @@ -1,7 +1,7 @@ @@ -10,5 +10,5 @@ diff --git a/src/views/echarts/pieEcharts/index.vue b/src/views/echarts/pieEcharts/index.vue index 967ba61..9941f88 100644 --- a/src/views/echarts/pieEcharts/index.vue +++ b/src/views/echarts/pieEcharts/index.vue @@ -5,118 +5,116 @@ diff --git a/src/views/echarts/simple/components/line.vue b/src/views/echarts/simple/components/line.vue index 0a4fbc4..f42bd48 100644 --- a/src/views/echarts/simple/components/line.vue +++ b/src/views/echarts/simple/components/line.vue @@ -1,5 +1,5 @@ diff --git a/src/views/errorPages/403.vue b/src/views/errorPages/403.vue index 1bd3044..72ac37b 100644 --- a/src/views/errorPages/403.vue +++ b/src/views/errorPages/403.vue @@ -1,244 +1,225 @@ - + diff --git a/src/views/errorPages/404.vue b/src/views/errorPages/404.vue index 315e830..c01aaaa 100644 --- a/src/views/errorPages/404.vue +++ b/src/views/errorPages/404.vue @@ -1,226 +1,225 @@ - + diff --git a/src/views/excel/exportExcel/index.scss b/src/views/excel/exportExcel/index.scss index c52e6e2..d45245c 100644 --- a/src/views/excel/exportExcel/index.scss +++ b/src/views/excel/exportExcel/index.scss @@ -1,4 +1,4 @@ -.header{ +.header { display: flex; padding: 16px 16px 16px 16px; margin-bottom: 16px; @@ -6,7 +6,7 @@ background: white; box-shadow: 0 0 12px rgb(0 0 0 / 5%); } -.footer{ +.footer { flex: 1; display: flex; padding: 16px; @@ -17,16 +17,16 @@ box-shadow: 0 0 12px rgb(0 0 0 / 5%); position: relative; box-sizing: border-box; - .footer-inner{ + .footer-inner { position: relative; width: 100%; height: 100%; } - .table{ + .table { position: absolute; left: 0; top: 0; width: 100%; - height: 100% + height: 100%; } } diff --git a/src/views/excel/exportExcel/index.vue b/src/views/excel/exportExcel/index.vue index 074fc57..67f0c2a 100644 --- a/src/views/excel/exportExcel/index.vue +++ b/src/views/excel/exportExcel/index.vue @@ -1,30 +1,21 @@ diff --git a/src/views/excel/exportMergeHeader/index.vue b/src/views/excel/exportMergeHeader/index.vue index f76c090..f3c526d 100644 --- a/src/views/excel/exportMergeHeader/index.vue +++ b/src/views/excel/exportMergeHeader/index.vue @@ -1,12 +1,8 @@ - + @@ -28,8 +24,7 @@ diff --git a/src/views/excel/exportStyleExcel/index.vue b/src/views/excel/exportStyleExcel/index.vue index 11434fc..586f9f1 100644 --- a/src/views/excel/exportStyleExcel/index.vue +++ b/src/views/excel/exportStyleExcel/index.vue @@ -1,12 +1,8 @@ diff --git a/src/views/excel/uploadExcel/index.vue b/src/views/excel/uploadExcel/index.vue index cb34687..b8d2f8c 100644 --- a/src/views/excel/uploadExcel/index.vue +++ b/src/views/excel/uploadExcel/index.vue @@ -1,26 +1,12 @@ diff --git a/src/views/form/advancedForm/index.scss b/src/views/form/advancedForm/index.scss index e9c2854..6a77f18 100644 --- a/src/views/form/advancedForm/index.scss +++ b/src/views/form/advancedForm/index.scss @@ -1,3 +1,3 @@ -.advancedForm{ +.advancedForm { padding: 20px; } diff --git a/src/views/form/advancedForm/index.vue b/src/views/form/advancedForm/index.vue index 1a3c49a..64c0c13 100644 --- a/src/views/form/advancedForm/index.vue +++ b/src/views/form/advancedForm/index.vue @@ -3,14 +3,12 @@ - + @@ -19,7 +17,7 @@ 收缩表单 通过高度来控制显隐藏 byHeight - + diff --git a/src/views/form/appendForm/index.scss b/src/views/form/appendForm/index.scss index d7f8d97..8444378 100644 --- a/src/views/form/appendForm/index.scss +++ b/src/views/form/appendForm/index.scss @@ -1,6 +1,6 @@ -.app-container-inner{ +.app-container-inner { text-align: center; - .add{ + .add { margin: 0 0 30px 0; } } diff --git a/src/views/form/appendForm/index.vue b/src/views/form/appendForm/index.vue index 70f8d5c..4b357fd 100644 --- a/src/views/form/appendForm/index.vue +++ b/src/views/form/appendForm/index.vue @@ -1,22 +1,16 @@ diff --git a/src/views/form/moreForm/components/FormOne.vue b/src/views/form/moreForm/components/FormOne.vue index 861d36a..a6b13ef 100644 --- a/src/views/form/moreForm/components/FormOne.vue +++ b/src/views/form/moreForm/components/FormOne.vue @@ -1,25 +1,25 @@ diff --git a/src/views/form/moreForm/components/FormThree.vue b/src/views/form/moreForm/components/FormThree.vue index 3723fbe..9904bf8 100644 --- a/src/views/form/moreForm/components/FormThree.vue +++ b/src/views/form/moreForm/components/FormThree.vue @@ -1,23 +1,23 @@ diff --git a/src/views/form/moreForm/components/FormTwo.vue b/src/views/form/moreForm/components/FormTwo.vue index ac80205..20c71a2 100644 --- a/src/views/form/moreForm/components/FormTwo.vue +++ b/src/views/form/moreForm/components/FormTwo.vue @@ -1,13 +1,13 @@ diff --git a/src/views/form/moreForm/index.scss b/src/views/form/moreForm/index.scss index 9c7ee27..6fde996 100644 --- a/src/views/form/moreForm/index.scss +++ b/src/views/form/moreForm/index.scss @@ -1,11 +1,11 @@ -.m-more-form{ +.m-more-form { width: 100%; padding: 10px; box-sizing: border-box; - :deep(.el-card){ + :deep(.el-card) { margin-bottom: 10px; } - .footer{ + .footer { width: 100%; text-align: center; } diff --git a/src/views/form/moreForm/index.vue b/src/views/form/moreForm/index.vue index 494e259..b21a2be 100644 --- a/src/views/form/moreForm/index.vue +++ b/src/views/form/moreForm/index.vue @@ -1,8 +1,8 @@ diff --git a/src/views/form/searchForm/index.scss b/src/views/form/searchForm/index.scss index 889c44c..cdcdea6 100644 --- a/src/views/form/searchForm/index.scss +++ b/src/views/form/searchForm/index.scss @@ -1,3 +1,3 @@ -.searchdForm{ +.searchdForm { padding: 20px; } diff --git a/src/views/form/validateForm/index.vue b/src/views/form/validateForm/index.vue index 654a938..5696db2 100644 --- a/src/views/form/validateForm/index.vue +++ b/src/views/form/validateForm/index.vue @@ -1,15 +1,7 @@ - - diff --git a/src/views/functionPage/fullscreen/index.scss b/src/views/functionPage/fullscreen/index.scss index 43a0469..51dfe56 100644 --- a/src/views/functionPage/fullscreen/index.scss +++ b/src/views/functionPage/fullscreen/index.scss @@ -1,30 +1,30 @@ -.app-container-inner{ +.app-container-inner { display: flex; align-items: center; justify-content: center; position: relative; - .header{ + .header { padding: 20px; position: absolute; left: 0; top: 0; width: 100%; border-bottom: 1px solid #0000001a; - .title{ + .title { margin-bottom: 20px; } } - .fullscreen{ + .fullscreen { display: flex; flex-direction: column; background: white; width: 300px; height: 300px; box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%); - .title{ + .title { padding: 20px; } - .inner{ + .inner { flex: 1; display: flex; align-items: center; diff --git a/src/views/functionPage/fullscreen/index.vue b/src/views/functionPage/fullscreen/index.vue index 8acf43a..7daa7ea 100644 --- a/src/views/functionPage/fullscreen/index.vue +++ b/src/views/functionPage/fullscreen/index.vue @@ -1,30 +1,30 @@ diff --git a/src/views/functionPage/informationList/components/List.vue b/src/views/functionPage/informationList/components/List.vue index f95e7f2..7370990 100644 --- a/src/views/functionPage/informationList/components/List.vue +++ b/src/views/functionPage/informationList/components/List.vue @@ -1,13 +1,13 @@ diff --git a/src/views/functionPage/informationList/components/Pagination.vue b/src/views/functionPage/informationList/components/Pagination.vue index 9d387c8..b3f46f9 100644 --- a/src/views/functionPage/informationList/components/Pagination.vue +++ b/src/views/functionPage/informationList/components/Pagination.vue @@ -1,35 +1,34 @@ diff --git a/src/views/functionPage/informationList/components/Search.vue b/src/views/functionPage/informationList/components/Search.vue index c06458b..2313d75 100644 --- a/src/views/functionPage/informationList/components/Search.vue +++ b/src/views/functionPage/informationList/components/Search.vue @@ -1,6 +1,6 @@ diff --git a/src/views/functionPage/informationList/components/SingleCheck.vue b/src/views/functionPage/informationList/components/SingleCheck.vue index 72e4236..df40e8b 100644 --- a/src/views/functionPage/informationList/components/SingleCheck.vue +++ b/src/views/functionPage/informationList/components/SingleCheck.vue @@ -1,10 +1,13 @@ diff --git a/src/views/functionPage/informationList/index.vue b/src/views/functionPage/informationList/index.vue index 72a8267..ada95b6 100644 --- a/src/views/functionPage/informationList/index.vue +++ b/src/views/functionPage/informationList/index.vue @@ -1,18 +1,15 @@ - + diff --git a/src/views/functionPage/tools/index.vue b/src/views/functionPage/tools/index.vue index 5e65f8c..965550e 100644 --- a/src/views/functionPage/tools/index.vue +++ b/src/views/functionPage/tools/index.vue @@ -1,121 +1,130 @@ - - diff --git a/src/views/home/index.scss b/src/views/home/index.scss index 197c9c5..506ef37 100644 --- a/src/views/home/index.scss +++ b/src/views/home/index.scss @@ -38,7 +38,7 @@ flex-direction: column; padding-left: 20px; justify-content: center; - .h2{ + .h2 { font-size: 24px; margin-bottom: 10px; } @@ -58,7 +58,7 @@ position: relative; margin-bottom: 10px; width: 100%; - .wechat{ + .wechat { position: absolute; width: 150px; right: 0; @@ -68,7 +68,7 @@ .card-item { background: linear-gradient(50deg, #1890ff, #77e19d); } -.home-container{ +.home-container { width: 100%; height: 100%; display: flex; diff --git a/src/views/home/index.vue b/src/views/home/index.vue index 08539df..ede816b 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -3,13 +3,13 @@ - - - - - - - + + + + + + +
@@ -42,7 +42,7 @@
---------- 开心最重要
如果对你有帮助的话,可以麻烦点一颗 Star、Fork、Watch! 你的鼓励是我继续优化的动力~~
如果对你有帮助的话,可以麻烦点一颗 Star、Fork、Watch! 你的鼓励是我继续优化的动力~~
@@ -53,18 +53,11 @@
-
用户访问量
@@ -75,18 +68,11 @@
-
系统消息
@@ -97,18 +83,11 @@
-
数量
@@ -124,25 +103,19 @@

zb-table

uniapp 表格组件 + >uniapp 表格组件 支持固定表头和首列、上拉加载更多、及固定多列,表格自适应内容,排序,多选checkbox、可点击删除,编辑、合计功能,兼容多端
- +

vue-admin-perfect

-
系统基于vue3+vuex+ element-plus+ts后台管理系统
+
系统基于vue3+vuex+ element-plus+ts后台管理系统
@@ -153,7 +126,7 @@
- +
@@ -174,5 +147,5 @@ diff --git a/src/views/login/components/LoginForm.vue b/src/views/login/components/LoginForm.vue index ac2b62d..779499d 100644 --- a/src/views/login/components/LoginForm.vue +++ b/src/views/login/components/LoginForm.vue @@ -3,18 +3,14 @@ logo

Vue-Admin-Perfect

- + diff --git a/src/views/login/components/LoginQrcode.vue b/src/views/login/components/LoginQrcode.vue index f722b1c..e9b892e 100644 --- a/src/views/login/components/LoginQrcode.vue +++ b/src/views/login/components/LoginQrcode.vue @@ -1,17 +1,14 @@ - - - diff --git a/src/views/login/index.scss b/src/views/login/index.scss index 86524b5..2c6c434 100644 --- a/src/views/login/index.scss +++ b/src/views/login/index.scss @@ -8,14 +8,14 @@ $dark_gray: #889aa4; display: flex; align-items: center; justify-content: center; - .login-left{ + .login-left { width: 50%; - img{ + img { width: 100%; max-width: 900px; } } - .login-form{ + .login-form { max-width: 480px; width: 50%; padding: 40px; @@ -24,7 +24,7 @@ $dark_gray: #889aa4; box-sizing: border-box; position: relative; - .info-qrcode{ + .info-qrcode { width: 150px; height: 40px; border-radius: 8px; @@ -37,8 +37,8 @@ $dark_gray: #889aa4; align-items: center; color: #1492ff; font-size: 16px; - &::after{ - content: ""; + &::after { + content: ''; -webkit-box-sizing: border-box; box-sizing: border-box; width: 10px; @@ -53,27 +53,28 @@ $dark_gray: #889aa4; } } } - .login-title{ + .login-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; - .title{ + .title { margin: 0; font-size: 30px; white-space: nowrap; } - .icon{ + .icon { width: 60px; } } - ::v-deep(.el-input__inner){ + ::v-deep(.el-input__inner) { height: 40px; } } -.login-btn{ +.login-btn { margin-top: 20px; - width: 100%; height: 47px + width: 100%; + height: 47px; } .show-pwd { position: absolute; @@ -83,7 +84,7 @@ $dark_gray: #889aa4; color: $dark_gray; cursor: pointer; user-select: none; - ::v-deep(.svg-icon){ + ::v-deep(.svg-icon) { vertical-align: 0; } } @@ -98,46 +99,45 @@ $dark_gray: #889aa4; padding: 25px 25px; box-sizing: border-box; } -.login-dark{ +.login-dark { position: absolute; right: 20px; top: 20px; } -.qrcode{ +.qrcode { position: absolute; right: 0; top: 0; cursor: pointer; width: 30px; } -.login-qrcode{ +.login-qrcode { width: 100%; display: flex; justify-content: center; flex-direction: column; align-items: center; - img{ + img { width: 60%; } - .title{ - + .title { } } -@media (max-width: 850px){ - .login-container{ +@media (max-width: 850px) { + .login-container { padding: 10px; } - .login-box{ - .login-form{ + .login-box { + .login-form { width: 88%; - .title{ + .title { font-size: 20px; } } } - .login-left{ + .login-left { display: none; } } diff --git a/src/views/login/index.vue b/src/views/login/index.vue index 4716272..ba9aa36 100644 --- a/src/views/login/index.vue +++ b/src/views/login/index.vue @@ -1,34 +1,34 @@ diff --git a/src/views/nested/menu1/index.vue b/src/views/nested/menu1/index.vue index d743312..0d2ac82 100644 --- a/src/views/nested/menu1/index.vue +++ b/src/views/nested/menu1/index.vue @@ -1,13 +1,11 @@ diff --git a/src/views/nested/menu1/menu1-1/index.vue b/src/views/nested/menu1/menu1-1/index.vue index 4c0a7e0..70e5a42 100644 --- a/src/views/nested/menu1/menu1-1/index.vue +++ b/src/views/nested/menu1/menu1-1/index.vue @@ -1,7 +1,6 @@ diff --git a/src/views/nested/menu1/menu1-2/index.vue b/src/views/nested/menu1/menu1-2/index.vue index f1de05f..4347419 100644 --- a/src/views/nested/menu1/menu1-2/index.vue +++ b/src/views/nested/menu1/menu1-2/index.vue @@ -1,7 +1,6 @@ diff --git a/src/views/other/cardDrag/data.ts b/src/views/other/cardDrag/data.ts index ec0ed5f..d4a5997 100644 --- a/src/views/other/cardDrag/data.ts +++ b/src/views/other/cardDrag/data.ts @@ -1,27 +1,37 @@ export const iconData = [ - 'management', - 'baseball', - 'Basketball', - 'BellFilled', - 'Bell', - 'AddLocation', - 'Aim', - 'AlarmClock', - 'Apple', - 'ArrowDownBold', - 'Burger', - 'Brush', - 'BrushFilled', - 'RemoveFilled', - 'QuestionFilled', - 'Promotion', - 'Printer', - 'School', - 'Setting', - 'WarningFilled', - 'ZoomOut', - 'WalletFilled', - 'User', - 'ToiletPaper', 'Sunrise', 'Sunny', 'SwitchButton', 'TakeawayBox', 'Ticket', - 'StarFilled', 'Stamp', 'Stopwatch', 'SortDown', 'SemiSelect', 'Search' + 'management', + 'baseball', + 'Basketball', + 'BellFilled', + 'Bell', + 'AddLocation', + 'Aim', + 'AlarmClock', + 'Apple', + 'ArrowDownBold', + 'Burger', + 'Brush', + 'BrushFilled', + 'RemoveFilled', + 'QuestionFilled', + 'Promotion', + 'Printer', + 'School', + 'Setting', + 'WarningFilled', + 'ZoomOut', + 'WalletFilled', + 'User', + 'ToiletPaper', + 'Sunrise', + 'Sunny', + 'SwitchButton', + 'TakeawayBox', + 'Ticket', + 'StarFilled', + 'Stamp', + 'Stopwatch', + 'SortDown', + 'SemiSelect', + 'Search', ] diff --git a/src/views/other/cardDrag/index.scss b/src/views/other/cardDrag/index.scss index 0fd07e9..5c3997b 100644 --- a/src/views/other/cardDrag/index.scss +++ b/src/views/other/cardDrag/index.scss @@ -1,13 +1,13 @@ -.m-card-drag{ +.m-card-drag { height: 100%; width: 100%; display: flex; flex-direction: column; - .header{ + .header { flex-shrink: 0; } } -.footer{ +.footer { flex: 1; padding: 10px; box-sizing: border-box; @@ -41,10 +41,10 @@ } .chosenClass { opacity: 0.6; - border: 1px solid rgba(64,158,255,0.2); + border: 1px solid rgba(64, 158, 255, 0.2); } -.item-icon{ +.item-icon { width: 100%; display: flex; - justify-content: center + justify-content: center; } diff --git a/src/views/other/cardDrag/index.vue b/src/views/other/cardDrag/index.vue index 1c42b02..558cee9 100644 --- a/src/views/other/cardDrag/index.vue +++ b/src/views/other/cardDrag/index.vue @@ -1,27 +1,23 @@ diff --git a/src/views/other/codeMirror/index.vue b/src/views/other/codeMirror/index.vue index 55feab7..cd2284a 100644 --- a/src/views/other/codeMirror/index.vue +++ b/src/views/other/codeMirror/index.vue @@ -1,7 +1,7 @@ diff --git a/src/views/other/count/index.vue b/src/views/other/count/index.vue index 8190c66..37d8101 100644 --- a/src/views/other/count/index.vue +++ b/src/views/other/count/index.vue @@ -1,92 +1,92 @@ @@ -113,5 +113,5 @@ diff --git a/src/views/other/cropper/components/CustomCropper.vue b/src/views/other/cropper/components/CustomCropper.vue index 527e4fe..b58e4c9 100644 --- a/src/views/other/cropper/components/CustomCropper.vue +++ b/src/views/other/cropper/components/CustomCropper.vue @@ -7,95 +7,94 @@
-
-
- -
-
- 向左旋转 - 向右旋转 - 放大 - 缩小 - 下载图片 - 下载图片 -
-
-
-
- -
-
+
+
+ +
+
+ 向左旋转 + 向右旋转 + 放大 + 缩小 + 下载图片 + 下载图片 +
+
+
+
+ +
+
- diff --git a/src/views/other/cropper/components/HeaderAvatar.vue b/src/views/other/cropper/components/HeaderAvatar.vue index decaba4..12c79b9 100644 --- a/src/views/other/cropper/components/HeaderAvatar.vue +++ b/src/views/other/cropper/components/HeaderAvatar.vue @@ -5,160 +5,150 @@ 头像上传裁剪
- +
- +
-
- -
- -
- - 点击上传图片 - +
+
+
+ + 点击上传图片 + +
- +
- +
diff --git a/src/views/other/cropper/index.vue b/src/views/other/cropper/index.vue index 6a94509..ffaea05 100644 --- a/src/views/other/cropper/index.vue +++ b/src/views/other/cropper/index.vue @@ -1,14 +1,13 @@ - + diff --git a/src/views/other/editor/index.vue b/src/views/other/editor/index.vue index b63fad9..26be813 100644 --- a/src/views/other/editor/index.vue +++ b/src/views/other/editor/index.vue @@ -2,18 +2,10 @@
- + - + @@ -24,76 +16,69 @@ 双向绑定的 value 值,使用示例:v-model='content' - https://www.wangeditor.com/v5/for-frame.html - + + https://www.wangeditor.com/v5/for-frame.html + - -
- 标题: -
{{dynamicValidateForm.title}}
+ +
+ 标题: +
{{ dynamicValidateForm.title }}
-
- 内容 +
+ 内容
- +
- - diff --git a/src/views/other/iconfont/index.scss b/src/views/other/iconfont/index.scss index 4c1f952..0ecb9e0 100644 --- a/src/views/other/iconfont/index.scss +++ b/src/views/other/iconfont/index.scss @@ -1,12 +1,12 @@ -.icon-list{ - box-sizing: border-box; - display: flex; - justify-content: space-between; - width: 100%; - padding: 40px 100px 0; - margin-bottom: 60px; +.icon-list { + box-sizing: border-box; + display: flex; + justify-content: space-between; + width: 100%; + padding: 40px 100px 0; + margin-bottom: 60px; } -.iconfont{ - font-size: 50px; +.iconfont { + font-size: 50px; } diff --git a/src/views/other/iconfont/index.vue b/src/views/other/iconfont/index.vue index c7e0b6b..989b3bf 100644 --- a/src/views/other/iconfont/index.vue +++ b/src/views/other/iconfont/index.vue @@ -1,11 +1,7 @@ diff --git a/src/views/other/markDown/index.vue b/src/views/other/markDown/index.vue index b3c1931..763e71c 100644 --- a/src/views/other/markDown/index.vue +++ b/src/views/other/markDown/index.vue @@ -1,9 +1,9 @@ diff --git a/src/views/other/print/index.vue b/src/views/other/print/index.vue index 7e1942e..e82c831 100644 --- a/src/views/other/print/index.vue +++ b/src/views/other/print/index.vue @@ -2,7 +2,7 @@
- 打印图片 + 打印图片 打印Json数据 打印HTML
@@ -19,16 +19,28 @@
- https://github.com/crabbly/Print.js + + https://github.com/crabbly/Print.js + 文档来源:pdf或图像的url,html元素的id或json数据的对象 可打印类型。可用的打印选项包括:pdf,html,image,json和raw-html。 - 打印html,image或json时,它将显示为文档标题。如果用户尝试将打印作业保存为pdf文件,它也将是文档的名称。 - 设置为false时,库不会处理应用于正在打印的html的样式。使用css参数时很有用 - 默认情况下,在打印HTML元素时,库仅处理某些样式。此选项允许您传递要处理的样式数组。例如:['padding-top','border-bottom'] + + 打印html,image或json时,它将显示为文档标题。如果用户尝试将打印作业保存为pdf文件,它也将是文档的名称。 + + 设置为false时,库不会处理应用于正在打印的html的样式。使用css参数时很有用 + + + 默认情况下,在打印HTML元素时,库仅处理某些样式。此选项允许您传递要处理的样式数组。例如:['padding-top','border-bottom'] + 打印JSON数据时网格标题的可选样式。 在打印JSON时使用。这些是对象属性名称。 - 要以彩色打印文本,请将此属性设置为true。默认情况下,所有文本都将以黑色打印。 - 这允许我们传递一个或多个应该应用于正在打印的html的css文件URL。值可以是包含单个URL的字符串,也可以是包含多个URL的数组。 + + 要以彩色打印文本,请将此属性设置为true。默认情况下,所有文本都将以黑色打印。 + + + 这允许我们传递一个或多个应该应用于正在打印的html的css文件URL。值可以是包含单个URL的字符串,也可以是包含多个URL的数组。 +
@@ -100,7 +112,7 @@ }, onEnd: function () { console.log('onEnd', new Date()) - } + }, }) break } diff --git a/src/views/other/qrcode/index.vue b/src/views/other/qrcode/index.vue index c7888b9..4c5946f 100644 --- a/src/views/other/qrcode/index.vue +++ b/src/views/other/qrcode/index.vue @@ -10,11 +10,13 @@ 下载
- +
- https://github.com/Binaryify/vue-qr + + https://github.com/Binaryify/vue-qr + 二维码内容,默认为 'https://github.com/zouzhibin/vue-admin-perfect' 嵌入至二维码中心的 LOGO 地址 尺寸, 长宽一致, 包含外边距,默认为 200 @@ -24,7 +26,10 @@ 若为 true, 背景图的主要颜色将作为实点的颜色, 即 colorDark,默认 true 实点的颜色,默认颜色值 =>黑色 空白区的颜色 - 生成的二维码 Data URI 可以在回调中取得,第一个参数为二维码 data URL, 第二个参数为 props 传过来的 qid(因为二维码生成是异步的,所以加个 id 用于排序) + + 生成的二维码 Data URI 可以在回调中取得,第一个参数为二维码 data URL, 第二个参数为 props 传过来的 qid(因为二维码生成是异步的,所以加个 + id 用于排序) + @@ -51,19 +56,19 @@ randomColor.value = getColor() return case 4: - let name = new Date().getTime(); - let a = document.createElement("a"); - a.style.display = "none"; - a.download = name; - a.href = qrcodeUrl.value; - document.body.appendChild(a); - a.click(); + let name = new Date().getTime() + let a = document.createElement('a') + a.style.display = 'none' + a.download = name + a.href = qrcodeUrl.value + document.body.appendChild(a) + a.click() a.remove() - return; + return } } - const qrcodeCallback = (url)=>{ + const qrcodeCallback = (url) => { qrcodeUrl.value = url } diff --git a/src/views/other/rightMenu/index.vue b/src/views/other/rightMenu/index.vue index 625e3c5..481fd84 100644 --- a/src/views/other/rightMenu/index.vue +++ b/src/views/other/rightMenu/index.vue @@ -1,7 +1,7 @@ diff --git a/src/views/other/svgIcon/index.scss b/src/views/other/svgIcon/index.scss index 9055ebc..158044d 100644 --- a/src/views/other/svgIcon/index.scss +++ b/src/views/other/svgIcon/index.scss @@ -1,12 +1,12 @@ -.icon-list{ - box-sizing: border-box; - display: flex; - justify-content: space-between; - width: 100%; - padding: 40px 100px 0; - margin-bottom: 60px; +.icon-list { + box-sizing: border-box; + display: flex; + justify-content: space-between; + width: 100%; + padding: 40px 100px 0; + margin-bottom: 60px; } -.icon{ - font-size: 50px; +.icon { + font-size: 50px; } diff --git a/src/views/other/svgIcon/index.vue b/src/views/other/svgIcon/index.vue index 82ae30c..b79d948 100644 --- a/src/views/other/svgIcon/index.vue +++ b/src/views/other/svgIcon/index.vue @@ -2,23 +2,23 @@

- - - - - - - - - - - + + + + + + + + + + +
图标的名称,svg 图标必须存储在 src/icons 目录下 @@ -27,13 +27,12 @@
- diff --git a/src/views/other/textClamp/index.vue b/src/views/other/textClamp/index.vue index 5fbf9d7..ec0b98c 100644 --- a/src/views/other/textClamp/index.vue +++ b/src/views/other/textClamp/index.vue @@ -3,7 +3,7 @@
@@ -11,22 +11,20 @@ diff --git a/src/views/other/upload/index.vue b/src/views/other/upload/index.vue index d0ef3ad..78ec213 100644 --- a/src/views/other/upload/index.vue +++ b/src/views/other/upload/index.vue @@ -1,57 +1,51 @@ diff --git a/src/views/other/waterMarker/index.vue b/src/views/other/waterMarker/index.vue index cbd0592..345a0e9 100644 --- a/src/views/other/waterMarker/index.vue +++ b/src/views/other/waterMarker/index.vue @@ -1,12 +1,12 @@