Luk*_*kas 5 javascript rollup bundling-and-minification vue.js tree-shaking
我正在尝试创建一个组件库,例如Wie Rollup和Vue,当其他人将其导入时,它们可以被树摇晃。我的设置如下:
相关摘录 package.json
{
"name": "red-components-with-rollup",
"version": "1.0.0",
"sideEffects": false,
"main": "dist/lib.cjs.js",
"module": "dist/lib.esm.js",
"browser": "dist/lib.umd.js",
"scripts": {
"build": "rollup -c",
"dev": "rollup -c -w"
},
"devDependencies": {
/* ... */
}
Run Code Online (Sandbox Code Playgroud)
这是我的全部 rollup.config.js
import resolve from "rollup-plugin-node-resolve";
import commonjs from "rollup-plugin-commonjs";
import vue from "rollup-plugin-vue";
import pkg from "./package.json";
export default {
input: "lib/index.js",
output: [
{
file: pkg.browser,
format: "umd",
name: "red-components"
},
{ file: pkg.main, format: "cjs" },
{ file: pkg.module, format: "es" }
],
plugins: [resolve(), commonjs(), vue()]
};
Run Code Online (Sandbox Code Playgroud)
我有一个相当简单的项目结构,其中包含一个index.js
文件和2个Vue组件:
root
? lib
? index.js
? components
? Anchor.vue
? Button.vue
? package.json
? rollup.config.js
Run Code Online (Sandbox Code Playgroud)
我index.js
导入Vue文件并将其导出:
export { default as Anchor } from "./components/Anchor.vue";
export { default as Button } from "./components/Button.vue";
export default undefined;
Run Code Online (Sandbox Code Playgroud)
如果我不采取export default undefined;
任何措施,则任何导入我的库的应用都找不到任何导出。奇怪的。
现在,当我创建另一个应用程序并red-components-with-rollup
像这样导入时:
import { Anchor } from "red-components-with-rollup";
Run Code Online (Sandbox Code Playgroud)
然后从应用程序中打开捆绑软件,我还将在捆绑软件中找到的源代码Button.vue
,但尚未将其作为无效代码消除。
我究竟做错了什么?
归档时间: |
|
查看次数: |
265 次 |
最近记录: |