Tus*_*usi 6 rollup vuejs3 vite
我正在构建一个基于汇总的 UI 库。发生错误,我不知道如何解决。
TypeError: Cannot read properties of undefined (reading 'scoped')
at transformStyle (C:\my-kit\node_modules\@vitejs\plugin-vue\dist\index.js:4597:19)
at Object.transform (C:\my-kit\node_modules\@vitejs\plugin-vue\dist\index.js:4747:18)
at C:\my-kit\node_modules\rollup\dist\shared\rollup.js:22870:37 {
code: 'PLUGIN_ERROR',
plugin: 'commonjs--resolver',
hook: 'resolveId',
id: 'C:\\my-kit\\packages\\my-ui\\icon\\select-icon-svg.vue?vue&type=style&index=0&scoped=true&lang.less',
Run Code Online (Sandbox Code Playgroud)
看起来解析 vue 有问题。
const 块=描述符.styles[索引];
的值block
未定义,访问scoped
的属性时发生错误block
。
这是我的汇总配置。希望有人可以帮助我。
import { rollup } from "rollup";
import { nodeResolve } from "@rollup/plugin-node-resolve";
import fastGlob from "fast-glob";
import vue from "@vitejs/plugin-vue";
import vueJsx from "@vitejs/plugin-vue-jsx";
import css from "rollup-plugin-css-only";
import commonjs from "@rollup/plugin-commonjs";
import esbuild from "rollup-plugin-esbuild";
import postcss from "rollup-plugin-postcss";
import postcssImport from "postcss-import";
import { babel, getBabelOutputPlugin } from "@rollup/plugin-babel";
import defineOptions from "unplugin-vue-define-options/rollup";
import { UI_PATH } from "./path";
import { resolve } from "path";
import pkgJson from "../packages/my-ui/package.json";
export const buildEsm = async () => {
const input = await fastGlob("**/*.{js,ts,jsx,tsx,vue}", {
cwd: UI_PATH,
absolute: true,
onlyFiles: true,
ignore: ["node_modules"],
});
try {
const bundle = await rollup({
input,
plugins: [
css(),
postcss({
extensions: [".css", ".less", ".scss"],
modules: true,
extract: true,
use: {
sass: null,
stylus: null,
less: { javascriptEnabled: true },
},
plugins: [postcssImport()],
}),
defineOptions(),
vue({
isProduction: false,
}),
vueJsx(),
nodeResolve({
extensions: [".js", ".json", ".ts", ".jsx", ".tsx", ".vue"],
}),
commonjs(),
esbuild({
sourceMap: true,
target: "es2018",
loaders: {
".vue": "ts",
},
}),
getBabelOutputPlugin({
configFile: resolve(__dirname, "../babel.config.js"),
}),
babel({
exclude: "node_modules/**",
extensions: [".js", ".jsx", ".ts", ".tsx", ".vue"],
babelHelpers: "bundled",
}),
],
external: Object.keys(pkgJson.peerDependencies),
});
// write the bundle to disk
await bundle.write({
format: "esm",
dir: resolve(UI_PATH, "es"),
});
} catch (err) {
console.error(err);
}
};
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1521 次 |
最近记录: |