mirror of
https://gitee.com/x_discoverer/Vue.NetCore.git
synced 2025-12-06 07:49:23 +08:00
升级vite至6.0版本,升级包所有依赖版本
This commit is contained in:
6918
vol.web/package-lock.json
generated
6918
vol.web/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,8 @@
|
||||
{
|
||||
"name": "vol",
|
||||
"version": "3.5.0",
|
||||
"private": true,
|
||||
"version": "3.5.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"serve": "vite --host",
|
||||
"dev": "vite --host",
|
||||
@@ -15,48 +16,26 @@
|
||||
"clean": "rimraf node_modules"
|
||||
},
|
||||
"dependencies": {
|
||||
"@amap/amap-jsapi-loader": "^1.0.1",
|
||||
"@microsoft/signalr": "^7.0.3",
|
||||
"ali-oss": "^6.17.1",
|
||||
"@microsoft/signalr": "^8.0.7",
|
||||
"ali-oss": "^6.23.0",
|
||||
"axios": "^1.3.4",
|
||||
"core-js": "^3.29.0",
|
||||
"echarts": "^5.4.1",
|
||||
"echarts": "^5.6.0",
|
||||
"element-plus": "^2.9.4",
|
||||
"less": "^4.1.3",
|
||||
"pinia": "^2.0.32",
|
||||
"sortablejs": "^1.15.3",
|
||||
"less": "^4.4.0",
|
||||
"pinia": "^3.0.3",
|
||||
"qrcode.vue": "^3.6.0",
|
||||
"rollup-plugin-commonjs": "^10.1.0",
|
||||
"sortablejs": "^1.15.3",
|
||||
"vite-plugin-commonjs": "^0.10.1",
|
||||
"vue": "^3.4.0",
|
||||
"vue-draggable-next": "^2.1.1",
|
||||
"vue-router": "^4.1.6",
|
||||
"vue": "^3.5.13",
|
||||
"vue-draggable-next": "^2.2.1",
|
||||
"vue-router": "^4.5.1",
|
||||
"vuex": "^4.1.0",
|
||||
"wangeditor": "^4.7.15"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/eslint-parser": "^7.21.3",
|
||||
"@rushstack/eslint-patch": "^1.2.0",
|
||||
"@types/jsdom": "^21.1.0",
|
||||
"@types/node": "^18.14.2",
|
||||
"@vitejs/plugin-vue": "^4.0.0",
|
||||
"@vitejs/plugin-vue-jsx": "^3.0.0",
|
||||
"@vue/eslint-config-prettier": "^7.1.0",
|
||||
"@vue/eslint-config-typescript": "^11.0.2",
|
||||
"@vue/test-utils": "^2.3.0",
|
||||
"@vue/tsconfig": "^0.7.0",
|
||||
"eslint": "^8.36.0",
|
||||
"eslint-plugin-vue": "^9.9.0",
|
||||
"jsdom": "^21.1.0",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"prettier": "^2.8.4",
|
||||
"rimraf": "^4.1.2",
|
||||
"rollup-plugin-visualizer": "^5.9.0",
|
||||
"stylus": "^0.59.0",
|
||||
"typescript": "~5.7.3",
|
||||
"vite": "^4.2.0",
|
||||
"vite-plugin-require-transform": "^1.0.21",
|
||||
"vitest": "^0.29.1",
|
||||
"vue-tsc": "^1.2.0"
|
||||
"@vitejs/plugin-vue": "^5.2.1",
|
||||
"@vitejs/plugin-vue-jsx": "^4.0.0",
|
||||
"typescript": "~5.6.2",
|
||||
"vite": "^6.0.1",
|
||||
"vue-tsc": "^2.1.10"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ export default {
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="stylus">
|
||||
<style>
|
||||
#app {
|
||||
font-family: Avenir, Helvetica, Arial, sans-serif;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
></vol-table>
|
||||
</template>
|
||||
<script>
|
||||
import VolTable from '@/components/basic/VolTable.vue';
|
||||
import {
|
||||
defineComponent,
|
||||
ref,
|
||||
@@ -20,7 +19,6 @@ import {
|
||||
} from 'vue';
|
||||
export default defineComponent({
|
||||
components: {
|
||||
VolTable
|
||||
},
|
||||
props: {
|
||||
tableData: {
|
||||
|
||||
@@ -454,7 +454,6 @@ import Empty from "@/components/basic/Empty.vue";
|
||||
export default {
|
||||
components: {
|
||||
ViewGridExpand,
|
||||
VolBox: defineAsyncComponent(() => import("@/components/basic/VolBox.vue")),
|
||||
QuickSearch: defineAsyncComponent(() => import("@/components/basic/QuickSearch.vue")),
|
||||
Audit: defineAsyncComponent(() => import("@/components/basic/Audit.vue")),
|
||||
UploadExcel: defineAsyncComponent(() => import("@/components/basic/UploadExcel.vue")),
|
||||
|
||||
@@ -304,14 +304,10 @@
|
||||
<vol-image-viewer ref="viewer"></vol-image-viewer>
|
||||
</template>
|
||||
<script>
|
||||
import VolTable from '@/components/basic/VolTable.vue'
|
||||
import VolBox from '@/components/basic/VolBox.vue'
|
||||
import VolImageViewer from '@/components/basic/VolImageViewer.vue'
|
||||
import { defineComponent, ref, reactive, getCurrentInstance, computed } from 'vue'
|
||||
export default defineComponent({
|
||||
components: {
|
||||
VolTable,
|
||||
VolBox,
|
||||
'vol-image-viewer': VolImageViewer,
|
||||
},
|
||||
emits: ['auditClick', 'signAfter', 'parentCall', 'flowLoadAfter'],
|
||||
|
||||
@@ -596,7 +596,7 @@ import { getCellColor, formatDate, cellFormatter } from './VolTable/VolTableForm
|
||||
import { tableRowClick, rowEndEdit } from './VolTable/VolTableEdit.js'
|
||||
const VolTableUpload = defineAsyncComponent(() => import('./VolTable/VolTableUpload.vue'))
|
||||
import VolLoading from '@/components/basic/VolLoading'
|
||||
const VolImageViewer = defineAsyncComponent(() => import('@/components/basic/VolImageViewer.vue'))
|
||||
import VolImageViewer from '@/components/basic/VolImageViewer.vue'
|
||||
const emit = defineEmits([
|
||||
'dicInited',
|
||||
'loadBefore',
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
<script setup>
|
||||
import { ref, getCurrentInstance, defineAsyncComponent } from "vue";
|
||||
const VolUpload = defineAsyncComponent(() => import("@/components/basic/VolUpload.vue"));
|
||||
const VolBox = defineAsyncComponent(() => import("@/components/basic/VolBox.vue"));
|
||||
const { proxy } = getCurrentInstance();
|
||||
const row = ref({});
|
||||
const column = ref({ message: null, edit: {} });
|
||||
|
||||
@@ -98,7 +98,6 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
let _this = this
|
||||
export default {
|
||||
props: {
|
||||
tableName: {
|
||||
@@ -172,7 +171,7 @@ export default {
|
||||
})
|
||||
}
|
||||
})
|
||||
_this.fieldsOptions = result
|
||||
this.fieldsOptions = result
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -192,7 +191,6 @@ export default {
|
||||
// }
|
||||
},
|
||||
created() {
|
||||
_this = this
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -61,7 +61,6 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import VolForm from '@/components/basic/VolForm.vue';
|
||||
// import draggable from 'vuedraggable'
|
||||
import { VueDraggableNext as draggable } from 'vue-draggable-next';
|
||||
// import { jsPlumb } from 'jsplumb'
|
||||
@@ -73,9 +72,6 @@ import nodeMenu from './node_menu';
|
||||
// import FlowInfo from './info';
|
||||
import FlowNodeForm from './node_form';
|
||||
import lodash from 'lodash';
|
||||
import { getDataDefault } from './data_default';
|
||||
|
||||
import { ForceDirected } from './force-directed';
|
||||
|
||||
export default {
|
||||
props: {
|
||||
@@ -175,8 +171,7 @@ export default {
|
||||
draggable,
|
||||
flowNode,
|
||||
nodeMenu,
|
||||
FlowNodeForm,
|
||||
VolForm
|
||||
FlowNodeForm
|
||||
},
|
||||
directives: {
|
||||
flowDrag: {
|
||||
|
||||
@@ -20,12 +20,10 @@
|
||||
|
||||
<script>
|
||||
import FlowPanel from "@/components/workflow/panel";
|
||||
import VolBox from "@/components/basic/VolBox.vue";
|
||||
export default {
|
||||
name: "App",
|
||||
components: {
|
||||
FlowPanel,
|
||||
VolBox,
|
||||
FlowPanel
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
@@ -28,10 +28,8 @@
|
||||
</template>
|
||||
<script>
|
||||
import VolFormDraggable from "@/components/basic/VolFormDraggable/index.js";
|
||||
import VolBox from "@/components/basic/VolBox.vue";
|
||||
export default {
|
||||
components: {
|
||||
VolBox,
|
||||
VolFormDraggable,
|
||||
},
|
||||
data() {
|
||||
|
||||
@@ -23,11 +23,10 @@
|
||||
</el-alert>
|
||||
</template>
|
||||
<script>
|
||||
import VolBox from "@/components/basic/VolBox.vue";
|
||||
import QuartzLog from "@/views/sys/quartz/Sys_QuartzLog";
|
||||
//这里使用的vue2语法,也可以写成vue3语法
|
||||
export default {
|
||||
components: { "vol-box": VolBox, QuartzLog },
|
||||
components: {QuartzLog },
|
||||
methods: {},
|
||||
data() {
|
||||
return {
|
||||
|
||||
@@ -1,82 +0,0 @@
|
||||
<template>
|
||||
<vol-box :full="false" :lazy="true" v-model="model" :title="row.CustomName" :width="width" :padding="0"
|
||||
>
|
||||
<div :style="{ height: height + 'px' }">
|
||||
<VolPrint ref="print" :is-box="true"></VolPrint>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="btns">
|
||||
<el-button plain="" type="primary" size="small" @click="model = false">{{ $ts('关闭') }}</el-button>
|
||||
<el-button type="primary" size="small" @click="saveClick">{{ $ts('保存') }}</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</vol-box>
|
||||
</template>
|
||||
<script setup>
|
||||
import { onMounted, ref, getCurrentInstance, reactive, nextTick } from "vue";
|
||||
import VolBox from '@/components/basic/VolBox.vue';
|
||||
import VolPrint from '@/components/VolPrint/VolPrint.vue'
|
||||
|
||||
const model = ref(false);
|
||||
const row = ref({})
|
||||
const print = ref(null);
|
||||
const open = (_row) => {
|
||||
model.value = true;
|
||||
row.value = _row;
|
||||
nextTick(async () => {
|
||||
await print.value.initPanel(_row,_row.TableName);
|
||||
print.value.buildDesigner(_row.Options)
|
||||
})
|
||||
}
|
||||
const { proxy } = getCurrentInstance();
|
||||
const saveClick = () => {
|
||||
const ops = print.value.exportJson();
|
||||
row.value.Options = JSON.stringify(ops);
|
||||
proxy.http.post("api/Sys_PrintOptions/update", { mainData: row.value }).then(result => {
|
||||
if (result.status) {
|
||||
proxy.$message.success(result.message)
|
||||
return;
|
||||
}
|
||||
|
||||
proxy.$message.error(result.message)
|
||||
})
|
||||
//model.value = false;
|
||||
}
|
||||
//onMounted
|
||||
const height = ref(document.body.clientHeight - 150)// 150)
|
||||
const width = ref(document.body.clientWidth * 0.95);
|
||||
if (width.value > 1500) {
|
||||
width.value = 1500;
|
||||
}
|
||||
defineExpose({
|
||||
open
|
||||
})
|
||||
|
||||
</script>
|
||||
<script>
|
||||
// import VolBox from '@/components/basic/VolBox.vue';
|
||||
// import VolPrint from '@/components/VolPrint/VolPrint.vue'
|
||||
// //这里使用的vue2语法,也可以写成vue3语法
|
||||
// export default {
|
||||
// components: { 'vol-box': VolBox },
|
||||
// methods: {},
|
||||
// data() {
|
||||
// return {
|
||||
// model: false
|
||||
// };
|
||||
// },
|
||||
// methods: {
|
||||
// open() {
|
||||
// this.model = true;
|
||||
// }
|
||||
// }
|
||||
// };
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.btns {
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<!-- <img src="@/assets/imgs/logo.png" /> -->
|
||||
</div>
|
||||
<div class="vol-menu">
|
||||
<el-scrollbar style="height: 100%; flex: 1">
|
||||
<el-scrollbar style="height: 100%; flex: 1;border-right:0;">
|
||||
<VolMenu
|
||||
:currentMenuId="currentMenuId"
|
||||
:on-select="onSelect"
|
||||
|
||||
@@ -109,16 +109,10 @@
|
||||
</template>
|
||||
<script>
|
||||
import builderData from './builderData.jsx'
|
||||
import VolForm from '@/components/basic/VolForm.vue'
|
||||
import VolTable from '@/components/basic/VolTable.vue'
|
||||
import VolBox from '@/components/basic/VolBox.vue'
|
||||
import VolHeader from '@/components/basic/VolHeader.vue'
|
||||
import VolMenu from '@/components/basic/VolElementMenu.vue'
|
||||
export default {
|
||||
components: {
|
||||
VolForm: VolForm,
|
||||
VolTable: VolTable,
|
||||
VolBox: VolBox,
|
||||
VolHeader: VolHeader,
|
||||
VolMenu
|
||||
},
|
||||
@@ -149,7 +143,7 @@ export default {
|
||||
'layOutOptins.fields.vuePath'(val) {
|
||||
localStorage.setItem('vuePath', val)
|
||||
},
|
||||
deep: true
|
||||
//deep: true
|
||||
//localStorage.setItem("vuePath", this.layOutOptins.fields.vuePath || "");
|
||||
},
|
||||
methods: {
|
||||
|
||||
@@ -293,6 +293,7 @@
|
||||
|
||||
::v-deep(.el-tabs__nav) {
|
||||
margin-left: 1px;
|
||||
height: 35px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-prev),
|
||||
|
||||
@@ -33,10 +33,8 @@
|
||||
//默认不会自动重连,需手动调用withAutomaticReconnect
|
||||
let connection;
|
||||
import * as signalR from '@microsoft/signalr';
|
||||
import VolForm from '@/components/basic/VolForm.vue';
|
||||
export default {
|
||||
components: {
|
||||
'vol-form': VolForm
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
@@ -103,8 +103,6 @@
|
||||
</div>
|
||||
</template>
|
||||
<script lang="jsx">
|
||||
import VolForm from "@/components/basic/VolForm.vue";
|
||||
import VolBox from "@/components/basic/VolBox.vue";
|
||||
import Icons from "@/components/basic/Icons.vue";
|
||||
import VolMenu from "@/components/basic/VolElementMenu.vue";
|
||||
import {
|
||||
@@ -121,8 +119,6 @@ import {
|
||||
import http from "@/api/http";
|
||||
export default defineComponent({
|
||||
components: {
|
||||
VolForm: VolForm,
|
||||
VolBox: VolBox,
|
||||
Icons: Icons,
|
||||
VolMenu,
|
||||
},
|
||||
|
||||
26
vol.web/tsconfig.app.json
Normal file
26
vol.web/tsconfig.app.json
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
||||
"target": "ES2020",
|
||||
"useDefineForClassFields": true,
|
||||
"module": "ESNext",
|
||||
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
||||
"skipLibCheck": true,
|
||||
|
||||
/* Bundler mode */
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"isolatedModules": true,
|
||||
"moduleDetection": "force",
|
||||
"noEmit": true,
|
||||
"jsx": "preserve",
|
||||
|
||||
/* Linting */
|
||||
"strict": true,
|
||||
"noUnusedLocals": true,
|
||||
"noUnusedParameters": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedSideEffectImports": true
|
||||
},
|
||||
"include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "src/main.js"]
|
||||
}
|
||||
@@ -1,17 +1,15 @@
|
||||
{
|
||||
"extends": "@vue/tsconfig/tsconfig.dom.json",
|
||||
"include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
|
||||
"compilerOptions": {
|
||||
"baseUrl": ".",
|
||||
"allowJs": true,//js文件忽略提示
|
||||
"paths": {
|
||||
"@/*": ["./src/*"]
|
||||
}
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "Node",
|
||||
"strict": true,
|
||||
"jsx": "preserve",
|
||||
"sourceMap": true,
|
||||
"resolveJsonModule": true,
|
||||
"esModuleInterop": true,
|
||||
"lib": ["ESNext", "DOM"]
|
||||
},
|
||||
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.node.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
"include": ["src/**/*.js", "src/**/*.vue"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
||||
@@ -1,8 +1,24 @@
|
||||
{
|
||||
"extends": "@vue/tsconfig/tsconfig.node.json",
|
||||
"include": ["vite.config.*", "vitest.config.*", "cypress.config.*", "playwright.config.*"],
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
"types": ["node"]
|
||||
}
|
||||
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
|
||||
"target": "ES2022",
|
||||
"lib": ["ES2023"],
|
||||
"module": "ESNext",
|
||||
"skipLibCheck": true,
|
||||
|
||||
/* Bundler mode */
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"isolatedModules": true,
|
||||
"moduleDetection": "force",
|
||||
"noEmit": true,
|
||||
|
||||
/* Linting */
|
||||
"strict": true,
|
||||
"noUnusedLocals": true,
|
||||
"noUnusedParameters": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedSideEffectImports": true
|
||||
},
|
||||
"include": ["vite.config.ts"]
|
||||
}
|
||||
|
||||
@@ -1,52 +1,78 @@
|
||||
import { fileURLToPath } from 'node:url'
|
||||
import commonjs from 'vite-plugin-commonjs'
|
||||
import { defineConfig } from 'vite'
|
||||
import vue from '@vitejs/plugin-vue'
|
||||
import vueJsx from '@vitejs/plugin-vue-jsx'
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { defineConfig } from "vite";
|
||||
import vue from "@vitejs/plugin-vue";
|
||||
//import { visualizer } from 'rollup-plugin-visualizer'
|
||||
import vueJsx from "@vitejs/plugin-vue-jsx";
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig({
|
||||
plugins: [
|
||||
commonjs(),
|
||||
{
|
||||
name: "remove-pure-annotations",
|
||||
transform(code) {
|
||||
return code.replace(/\/\*#__PURE__\*\//g, "");
|
||||
},
|
||||
},
|
||||
vue(),
|
||||
vueJsx(),
|
||||
],
|
||||
define: {
|
||||
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: 'true'
|
||||
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: "true",
|
||||
},
|
||||
optimizeDeps: {
|
||||
exclude: ['vue']
|
||||
exclude: ["vue"],
|
||||
},
|
||||
// base: '/test/',
|
||||
build: {
|
||||
//minify: false,
|
||||
//minify: "terser",
|
||||
commonjsOptions: {
|
||||
transformMixedEsModules: true
|
||||
transformMixedEsModules: true,
|
||||
},
|
||||
chunkSizeWarningLimit: 1000, // 提高警告阈值
|
||||
rollupOptions: {
|
||||
onwarn(warning, warn) {
|
||||
if (warning.code === "EMPTY_BUNDLE"||warning.code === 'EVAL'||warning.message.includes('larger than')) {
|
||||
return;
|
||||
}
|
||||
warn(warning);
|
||||
},
|
||||
// external: ["vue-plugin-hiprint"],
|
||||
output: {
|
||||
// 保留formatter变量名
|
||||
//minifyInternalExports: false,
|
||||
//每个node_modules模块分成一个js文件
|
||||
manualChunks(id) {
|
||||
if (id.includes('node_modules')) {
|
||||
return id.toString().split('node_modules/')[1].split('/')[0].toString()
|
||||
if (id.includes("node_modules")) {
|
||||
return id
|
||||
.toString()
|
||||
.split("node_modules/")[1]
|
||||
.split("/")[0]
|
||||
.toString();
|
||||
}
|
||||
},
|
||||
entryFileNames: 'assets/js/[hash].js',
|
||||
chunkFileNames: 'assets/js/[hash].js',
|
||||
assetFileNames: 'assets/[ext]/[hash].[ext]'
|
||||
}
|
||||
entryFileNames: "assets/js/[hash].js",
|
||||
chunkFileNames: "assets/js/[hash].js",
|
||||
assetFileNames: "assets/[ext]/[hash].[ext]",
|
||||
},
|
||||
},
|
||||
sourcemap: false //生成源映射文件
|
||||
// outDir: 'dist', // 输出目录,默认为 'dist'
|
||||
// rollupOptions: {
|
||||
// input: {
|
||||
// main: 'src/main.js', // 你的入口文件
|
||||
// }
|
||||
// },
|
||||
sourcemap: false, //生成源映射文件
|
||||
},
|
||||
publicDir: 'public', // 这里指定了 public 文件夹的位置
|
||||
publicDir: "public", // 这里指定了 public 文件夹的位置
|
||||
css: {
|
||||
//查看CSS属于哪个css文件
|
||||
devSourcemap: false
|
||||
devSourcemap: false,
|
||||
},
|
||||
server: {
|
||||
port: 9990
|
||||
port: 9990,
|
||||
//配置代理
|
||||
// proxy: {//http.js里设置为空axios.defaults.baseURL = "";
|
||||
// '/api': {
|
||||
// target:'http://proapi.volcore.xyz/',
|
||||
// target:'http://api.volcore.xyz/',
|
||||
// changeOrigin: true,
|
||||
// timeout:1000*60*10
|
||||
// //rewrite: (path) => path.replace(/^\/api/, '')
|
||||
@@ -54,9 +80,9 @@ export default defineConfig({
|
||||
// }
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue', '.mjs'],
|
||||
extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue", ".mjs"],
|
||||
alias: {
|
||||
'@': fileURLToPath(new URL('./src', import.meta.url))
|
||||
}
|
||||
}
|
||||
})
|
||||
"@": fileURLToPath(new URL("./src", import.meta.url)),
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user