Commit 4209625b1b72926122c5f571d33ba19b457dd63f

Authored by xingyu4j
1 parent def2b2a1

feat: add vite-plugin-vue-setup-extend

yudao-ui-admin-vue3/package.json
@@ -78,8 +78,6 @@ @@ -78,8 +78,6 @@
78 "eslint-define-config": "^1.12.0", 78 "eslint-define-config": "^1.12.0",
79 "eslint-plugin-prettier": "^4.2.1", 79 "eslint-plugin-prettier": "^4.2.1",
80 "eslint-plugin-vue": "^9.7.0", 80 "eslint-plugin-vue": "^9.7.0",
81 - "sass": "^1.56.1",  
82 - "sass-loader": "^13.2.0",  
83 "lint-staged": "^13.0.3", 81 "lint-staged": "^13.0.3",
84 "plop": "^3.1.1", 82 "plop": "^3.1.1",
85 "postcss": "^8.4.19", 83 "postcss": "^8.4.19",
@@ -88,6 +86,7 @@ @@ -88,6 +86,7 @@
88 "prettier": "^2.8.0", 86 "prettier": "^2.8.0",
89 "rimraf": "^3.0.2", 87 "rimraf": "^3.0.2",
90 "rollup": "^3.4.0", 88 "rollup": "^3.4.0",
  89 + "sass": "^1.56.1",
91 "stylelint": "^14.15.0", 90 "stylelint": "^14.15.0",
92 "stylelint-config-html": "^1.1.0", 91 "stylelint-config-html": "^1.1.0",
93 "stylelint-config-prettier": "^9.0.4", 92 "stylelint-config-prettier": "^9.0.4",
@@ -103,6 +102,7 @@ @@ -103,6 +102,7 @@
103 "vite-plugin-purge-icons": "^0.9.1", 102 "vite-plugin-purge-icons": "^0.9.1",
104 "vite-plugin-style-import": "2.0.0", 103 "vite-plugin-style-import": "2.0.0",
105 "vite-plugin-svg-icons": "^2.0.1", 104 "vite-plugin-svg-icons": "^2.0.1",
  105 + "vite-plugin-vue-setup-extend": "^0.4.0",
106 "vite-plugin-windicss": "^1.8.8", 106 "vite-plugin-windicss": "^1.8.8",
107 "vue-tsc": "^1.0.9", 107 "vue-tsc": "^1.0.9",
108 "windicss": "^3.5.6" 108 "windicss": "^3.5.6"
yudao-ui-admin-vue3/pnpm-lock.yaml
@@ -52,7 +52,6 @@ specifiers: @@ -52,7 +52,6 @@ specifiers:
52 rimraf: ^3.0.2 52 rimraf: ^3.0.2
53 rollup: ^3.4.0 53 rollup: ^3.4.0
54 sass: ^1.56.1 54 sass: ^1.56.1
55 - sass-loader: ^13.2.0  
56 stylelint: ^14.15.0 55 stylelint: ^14.15.0
57 stylelint-config-html: ^1.1.0 56 stylelint-config-html: ^1.1.0
58 stylelint-config-prettier: ^9.0.4 57 stylelint-config-prettier: ^9.0.4
@@ -69,6 +68,7 @@ specifiers: @@ -69,6 +68,7 @@ specifiers:
69 vite-plugin-purge-icons: ^0.9.1 68 vite-plugin-purge-icons: ^0.9.1
70 vite-plugin-style-import: 2.0.0 69 vite-plugin-style-import: 2.0.0
71 vite-plugin-svg-icons: ^2.0.1 70 vite-plugin-svg-icons: ^2.0.1
  71 + vite-plugin-vue-setup-extend: ^0.4.0
72 vite-plugin-windicss: ^1.8.8 72 vite-plugin-windicss: ^1.8.8
73 vue: 3.2.45 73 vue: 3.2.45
74 vue-cropper: ^1.0.3 74 vue-cropper: ^1.0.3
@@ -144,7 +144,6 @@ devDependencies: @@ -144,7 +144,6 @@ devDependencies:
144 rimraf: registry.npmmirror.com/rimraf/3.0.2 144 rimraf: registry.npmmirror.com/rimraf/3.0.2
145 rollup: registry.npmmirror.com/rollup/3.4.0 145 rollup: registry.npmmirror.com/rollup/3.4.0
146 sass: registry.npmmirror.com/sass/1.56.1 146 sass: registry.npmmirror.com/sass/1.56.1
147 - sass-loader: registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1  
148 stylelint: registry.npmmirror.com/stylelint/14.15.0 147 stylelint: registry.npmmirror.com/stylelint/14.15.0
149 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4 148 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4
150 stylelint-config-prettier: registry.npmmirror.com/stylelint-config-prettier/9.0.4_stylelint@14.15.0 149 stylelint-config-prettier: registry.npmmirror.com/stylelint-config-prettier/9.0.4_stylelint@14.15.0
@@ -160,6 +159,7 @@ devDependencies: @@ -160,6 +159,7 @@ devDependencies:
160 vite-plugin-purge-icons: registry.npmmirror.com/vite-plugin-purge-icons/0.9.1_vite@3.2.4 159 vite-plugin-purge-icons: registry.npmmirror.com/vite-plugin-purge-icons/0.9.1_vite@3.2.4
161 vite-plugin-style-import: registry.npmmirror.com/vite-plugin-style-import/2.0.0_vite@3.2.4 160 vite-plugin-style-import: registry.npmmirror.com/vite-plugin-style-import/2.0.0_vite@3.2.4
162 vite-plugin-svg-icons: registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.4 161 vite-plugin-svg-icons: registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.4
  162 + vite-plugin-vue-setup-extend: registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0_vite@3.2.4
163 vite-plugin-windicss: registry.npmmirror.com/vite-plugin-windicss/1.8.8_vite@3.2.4 163 vite-plugin-windicss: registry.npmmirror.com/vite-plugin-windicss/1.8.8_vite@3.2.4
164 vue-tsc: registry.npmmirror.com/vue-tsc/1.0.9_typescript@4.9.3 164 vue-tsc: registry.npmmirror.com/vue-tsc/1.0.9_typescript@4.9.3
165 windicss: registry.npmmirror.com/windicss/3.5.6 165 windicss: registry.npmmirror.com/windicss/3.5.6
@@ -5528,13 +5528,6 @@ packages: @@ -5528,13 +5528,6 @@ packages:
5528 engines: {node: '>=0.10.0'} 5528 engines: {node: '>=0.10.0'}
5529 dev: true 5529 dev: true
5530 5530
5531 - registry.npmmirror.com/klona/2.0.5:  
5532 - resolution: {integrity: sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/klona/-/klona-2.0.5.tgz}  
5533 - name: klona  
5534 - version: 2.0.5  
5535 - engines: {node: '>= 8'}  
5536 - dev: true  
5537 -  
5538 registry.npmmirror.com/known-css-properties/0.26.0: 5531 registry.npmmirror.com/known-css-properties/0.26.0:
5539 resolution: {integrity: sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/known-css-properties/-/known-css-properties-0.26.0.tgz} 5532 resolution: {integrity: sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/known-css-properties/-/known-css-properties-0.26.0.tgz}
5540 name: known-css-properties 5533 name: known-css-properties
@@ -7325,33 +7318,6 @@ packages: @@ -7325,33 +7318,6 @@ packages:
7325 version: 2.1.2 7318 version: 2.1.2
7326 dev: true 7319 dev: true
7327 7320
7328 - registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1:  
7329 - resolution: {integrity: sha512-JWEp48djQA4nbZxmgC02/Wh0eroSUutulROUusYJO9P9zltRbNN80JCBHqRGzjd4cmZCa/r88xgfkjGD0TXsHg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass-loader/-/sass-loader-13.2.0.tgz}  
7330 - id: registry.npmmirror.com/sass-loader/13.2.0  
7331 - name: sass-loader  
7332 - version: 13.2.0  
7333 - engines: {node: '>= 14.15.0'}  
7334 - peerDependencies:  
7335 - fibers: '>= 3.1.0'  
7336 - node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0  
7337 - sass: ^1.3.0  
7338 - sass-embedded: '*'  
7339 - webpack: ^5.0.0  
7340 - peerDependenciesMeta:  
7341 - fibers:  
7342 - optional: true  
7343 - node-sass:  
7344 - optional: true  
7345 - sass:  
7346 - optional: true  
7347 - sass-embedded:  
7348 - optional: true  
7349 - dependencies:  
7350 - klona: registry.npmmirror.com/klona/2.0.5  
7351 - neo-async: registry.npmmirror.com/neo-async/2.6.2  
7352 - sass: registry.npmmirror.com/sass/1.56.1  
7353 - dev: true  
7354 -  
7355 registry.npmmirror.com/sass/1.56.1: 7321 registry.npmmirror.com/sass/1.56.1:
7356 resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.56.1.tgz} 7322 resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.56.1.tgz}
7357 name: sass 7323 name: sass
@@ -8567,6 +8533,19 @@ packages: @@ -8567,6 +8533,19 @@ packages:
8567 - supports-color 8533 - supports-color
8568 dev: true 8534 dev: true
8569 8535
  8536 + registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0_vite@3.2.4:
  8537 + resolution: {integrity: sha512-WMbjPCui75fboFoUTHhdbXzu4Y/bJMv5N9QT9a7do3wNMNHHqrk+Tn2jrSJU0LS5fGl/EG+FEDBYVUeWIkDqXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-vue-setup-extend/-/vite-plugin-vue-setup-extend-0.4.0.tgz}
  8538 + id: registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0
  8539 + name: vite-plugin-vue-setup-extend
  8540 + version: 0.4.0
  8541 + peerDependencies:
  8542 + vite: '>=2.0.0'
  8543 + dependencies:
  8544 + '@vue/compiler-sfc': registry.npmmirror.com/@vue/compiler-sfc/3.2.45
  8545 + magic-string: registry.npmmirror.com/magic-string/0.25.9
  8546 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
  8547 + dev: true
  8548 +
8570 registry.npmmirror.com/vite-plugin-windicss/1.8.8_vite@3.2.4: 8549 registry.npmmirror.com/vite-plugin-windicss/1.8.8_vite@3.2.4:
8571 resolution: {integrity: sha512-iyu+ZX0NmhNEUaLPv7xtC+EFRBpWMmw0nhd9a9upayfuNG/thwslKiQKmRB7U/dG0k/2oWLvPDvN/B9i7oRgSA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-windicss/-/vite-plugin-windicss-1.8.8.tgz} 8550 resolution: {integrity: sha512-iyu+ZX0NmhNEUaLPv7xtC+EFRBpWMmw0nhd9a9upayfuNG/thwslKiQKmRB7U/dG0k/2oWLvPDvN/B9i7oRgSA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-windicss/-/vite-plugin-windicss-1.8.8.tgz}
8572 id: registry.npmmirror.com/vite-plugin-windicss/1.8.8 8551 id: registry.npmmirror.com/vite-plugin-windicss/1.8.8
yudao-ui-admin-vue3/src/views/system/dept/index.vue
@@ -75,19 +75,19 @@ @@ -75,19 +75,19 @@
75 </template> 75 </template>
76 </XModal> 76 </XModal>
77 </template> 77 </template>
78 -<script setup lang="ts"> 78 +<script setup lang="ts" name="Dept">
79 import { nextTick, onMounted, reactive, ref, unref } from 'vue' 79 import { nextTick, onMounted, reactive, ref, unref } from 'vue'
  80 +import { ElSelect, ElTreeSelect, ElOption } from 'element-plus'
  81 +import { VxeGridInstance } from 'vxe-table'
  82 +import { handleTree } from '@/utils/tree'
  83 +import { required } from '@/utils/formRules.js'
80 import { useI18n } from '@/hooks/web/useI18n' 84 import { useI18n } from '@/hooks/web/useI18n'
81 import { useMessage } from '@/hooks/web/useMessage' 85 import { useMessage } from '@/hooks/web/useMessage'
82 -import { VxeGridInstance } from 'vxe-table'  
83 -import { ElSelect, ElTreeSelect, ElOption } from 'element-plus' 86 +import { useVxeGrid } from '@/hooks/web/useVxeGrid'
  87 +import { FormExpose } from '@/components/Form'
84 import { allSchemas } from './dept.data' 88 import { allSchemas } from './dept.data'
85 import * as DeptApi from '@/api/system/dept' 89 import * as DeptApi from '@/api/system/dept'
86 import { getListSimpleUsersApi, UserVO } from '@/api/system/user' 90 import { getListSimpleUsersApi, UserVO } from '@/api/system/user'
87 -import { required } from '@/utils/formRules.js'  
88 -import { handleTree } from '@/utils/tree'  
89 -import { FormExpose } from '@/components/Form'  
90 -import { useVxeGrid } from '@/hooks/web/useVxeGrid'  
91 91
92 const { t } = useI18n() // 国际化 92 const { t } = useI18n() // 国际化
93 const message = useMessage() // 消息弹窗 93 const message = useMessage() // 消息弹窗
yudao-ui-admin-vue3/vite.config.ts
@@ -2,16 +2,18 @@ import { resolve } from &#39;path&#39; @@ -2,16 +2,18 @@ import { resolve } from &#39;path&#39;
2 import { loadEnv } from 'vite' 2 import { loadEnv } from 'vite'
3 import type { UserConfig, ConfigEnv } from 'vite' 3 import type { UserConfig, ConfigEnv } from 'vite'
4 import Vue from '@vitejs/plugin-vue' 4 import Vue from '@vitejs/plugin-vue'
5 -import WindiCSS from 'vite-plugin-windicss'  
6 import VueJsx from '@vitejs/plugin-vue-jsx' 5 import VueJsx from '@vitejs/plugin-vue-jsx'
7 -import EslintPlugin from 'vite-plugin-eslint'  
8 import VueI18n from '@intlify/vite-plugin-vue-i18n' 6 import VueI18n from '@intlify/vite-plugin-vue-i18n'
9 -import { createStyleImportPlugin, ElementPlusResolve, VxeTableResolve } from 'vite-plugin-style-import' 7 +import WindiCSS from 'vite-plugin-windicss'
10 import progress from 'vite-plugin-progress' 8 import progress from 'vite-plugin-progress'
11 -import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' 9 +import EslintPlugin from 'vite-plugin-eslint'
12 import PurgeIcons from 'vite-plugin-purge-icons' 10 import PurgeIcons from 'vite-plugin-purge-icons'
13 import { createHtmlPlugin } from 'vite-plugin-html' 11 import { createHtmlPlugin } from 'vite-plugin-html'
14 import viteCompression from 'vite-plugin-compression' 12 import viteCompression from 'vite-plugin-compression'
  13 +import vueSetupExtend from 'vite-plugin-vue-setup-extend'
  14 +import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
  15 +import { createStyleImportPlugin, ElementPlusResolve, VxeTableResolve } from 'vite-plugin-style-import'
  16 +
15 // 当前执行node命令时文件夹的地址(工作目录) 17 // 当前执行node命令时文件夹的地址(工作目录)
16 const root = process.cwd() 18 const root = process.cwd()
17 19
@@ -56,6 +58,7 @@ export default ({ command, mode }: ConfigEnv): UserConfig =&gt; { @@ -56,6 +58,7 @@ export default ({ command, mode }: ConfigEnv): UserConfig =&gt; {
56 WindiCSS(), 58 WindiCSS(),
57 progress(), 59 progress(),
58 PurgeIcons(), 60 PurgeIcons(),
  61 + vueSetupExtend(),
59 createStyleImportPlugin({ 62 createStyleImportPlugin({
60 resolves: [ElementPlusResolve(),VxeTableResolve()], 63 resolves: [ElementPlusResolve(),VxeTableResolve()],
61 libs: [{ 64 libs: [{