使用vite打包组件库,打包出来的代码含有空值合并运算符?? ,导致安装的项目编译报错。实在是不知道哪里配错了,救救孩子吧~~vite.config.js配置如下。babel有升级到7。。。。
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import { libInjectCss } from "vite-plugin-lib-inject-css";
import babel from "@rollup/plugin-babel";
import vitePluginImp from "vite-plugin-imp";
export default defineConfig({
esbuild: {
loader: "jsx",
},
optimizeDeps: {
esbuildOptions: {
loader: {
".js": "jsx",
},
},
},
plugins: [
react(),
babel({
babelHelpers: "bundled",
exclude: /node_modules/,
plugins: ["@babel/plugin-transform-nullish-coalescing-operator"],
presets: [
[
"@babel/preset-env",
{
targets: "> 0.25%, not dead",
},
],
"@babel/preset-react",
],
}),
libInjectCss(),
],
build: {
outDir: "dist/umd",
lib: {
formats: ["umd"],
entry: "lib/main.js",
name: "DadaMobileUi",
fileName: (format) => `dada-mobile-ui.${format}.js`,
},
rollupOptions: {
external: [
"react",
"react-dom",
"react/jsx-runtime",
"prop-types",
"@nutui/nutui-react",
],
output: {
globals: {
react: "React",
"react-dom": "ReactDOM",
"react/jsx-runtime": "ReactJsxRuntime",
"prop-types": "PropTypes",
"@nutui/nutui-react": "nutuiReact",
},
},
},
},
css: {
plugins: [
require("autoprefixer")({
overrideBrowserslist: [
"> 0.5%",
"last 2 versions",
"ie > 11",
"iOS >= 10",
"Android >= 5",
],
}),
],
},
});
实在是不知道哪里配错了,救救孩子吧
试试