39 lines
962 B
TypeScript
39 lines
962 B
TypeScript
|
import { defineConfig } from 'vite'
|
||
|
import vue from '@vitejs/plugin-vue'
|
||
|
import vueJsx from '@vitejs/plugin-vue-jsx'
|
||
|
|
||
|
import vue2 from '@vitejs/plugin-vue2'
|
||
|
import vue2Jsx from '@vitejs/plugin-vue2-jsx'
|
||
|
import { isVue2, isVue3,version } from 'vue-demi'
|
||
|
import path from 'node:path'
|
||
|
import { createRequire } from 'node:module'
|
||
|
|
||
|
const resolve = (str: string) => {
|
||
|
return path.resolve(__dirname, str)
|
||
|
}
|
||
|
console.log('vue',version)
|
||
|
|
||
|
function getV2Compiler() {
|
||
|
const req = createRequire(import.meta.url);
|
||
|
const rt = req.resolve("./node_modules/vue2/compiler-sfc");
|
||
|
console.log(rt);
|
||
|
const c = req(rt)
|
||
|
console.log(c);
|
||
|
return c;
|
||
|
}
|
||
|
|
||
|
// https://vite.dev/config/
|
||
|
export default defineConfig({
|
||
|
plugins: isVue3 ? [vue(), vueJsx()] : [vue2({
|
||
|
compiler: getV2Compiler()
|
||
|
}), vue2Jsx()],
|
||
|
resolve:{
|
||
|
alias:{
|
||
|
vue: isVue2 ? resolve('./node_modules/vue2') : resolve('./node_modules/vue'),
|
||
|
}
|
||
|
},
|
||
|
optimizeDeps: {
|
||
|
exclude: ['vue-demi']
|
||
|
},
|
||
|
})
|