我想将.js文件与仅具有类定义的汇总捆绑在一起。但汇总只会创建一个空的捆绑文件。当我在类Definition之外添加一些代码时,这会发生变化。 这会创建一个空包:
class MyElement extends HTMLElement{
constructor() {...}
...
}
这会创建一个填充的包:
class MyElement extends HTMLElement{
constructor() {...}
...
}
customElements.define('my-element', MyElement);
但我不想在该文件中使用... define()。 有没有办法让rollup.js只捆绑类定义?
答案 0 :(得分:3)
你有一个模块,它在本地范围内定义了一个类,但没有对它做任何事情 - 既不导出它也不用它来执行副作用,比如将它传递给define
。这是死代码 - 这将被汇总剥离。您可能想要使用
export default class MyElement extends HTMLElement { /*
^^^^^^^^^^^^^^ */
constructor() { … }
…
}
可以绑定到仍然导出类的东西,以便它可以在其他地方使用。
答案 1 :(得分:2)
老话题,但对那些正在研究的人有用: 对我来说它有效:
更改文件 tsconfig.json
"emitDeclarationOnly": false,