Rollup 分别编译模块 typescript 声明和 javascript 文件
Rollup compiling module typescript declarations and javascript files separately
Rollup 在单独的区域编译模块声明,而 javascript 保存在 npm 包的另一个区域。
rollup.config.js
import Ts from 'rollup-plugin-typescript2';
import image from '@rollup/plugin-image';
export default {
input: [
'src/index.ts',
'src/atoms/Button/index.ts',
],
output: {
dir: 'lib',
format: 'esm',
sourcemap: true,
},
plugins: [Ts(), image()],
preserveModules: true,
external: [
'react',
],
};
捆绑后的 lib 文件夹如下所示
lib
|__atoms
|____Button
|______Button.d.ts
|______index.d.ts
|__packages
|____react
|______src
|________atoms
|__________Button
|____________Button.js
|____________Button.js.map
|____________index.js
|____________index.js.map
正如您在按钮示例中看到的那样,我需要将它们放在一个文件中,因为当我尝试将此文件导入另一个存储库时..
产生的错误是..
Could not find a declaration file for module
If the <PACKAGE> package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module
如果需要更多项目来回答这个问题,请告诉我。
好的,经过深入挖掘。问题与不将包添加为外部依赖项有关。如果未包含,rollup
将创建一个捆绑的 node_modules
文件夹,其中包含未添加到 external
配置中的包,并尝试在该文件夹之上创建一个目录,使用捆绑了 javascript.
输出结构
lib
|__node_modules
|____<PACKAGE_BEING_USED_IN_FILES>
rollup.config.js
external: [
'react',
'<PACKAGE_BEING_USED_IN_FILES>',
],
通过正确添加我所有的外部依赖项。我能够解决此错误。
棘手的部分是 rollup
,没有给出关于这种特定依赖关系的警告.. 这有点让我陷入循环。
Rollup 在单独的区域编译模块声明,而 javascript 保存在 npm 包的另一个区域。
rollup.config.js
import Ts from 'rollup-plugin-typescript2';
import image from '@rollup/plugin-image';
export default {
input: [
'src/index.ts',
'src/atoms/Button/index.ts',
],
output: {
dir: 'lib',
format: 'esm',
sourcemap: true,
},
plugins: [Ts(), image()],
preserveModules: true,
external: [
'react',
],
};
捆绑后的 lib 文件夹如下所示
lib
|__atoms
|____Button
|______Button.d.ts
|______index.d.ts
|__packages
|____react
|______src
|________atoms
|__________Button
|____________Button.js
|____________Button.js.map
|____________index.js
|____________index.js.map
正如您在按钮示例中看到的那样,我需要将它们放在一个文件中,因为当我尝试将此文件导入另一个存储库时..
产生的错误是..
Could not find a declaration file for module
If the <PACKAGE> package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module
如果需要更多项目来回答这个问题,请告诉我。
好的,经过深入挖掘。问题与不将包添加为外部依赖项有关。如果未包含,rollup
将创建一个捆绑的 node_modules
文件夹,其中包含未添加到 external
配置中的包,并尝试在该文件夹之上创建一个目录,使用捆绑了 javascript.
输出结构
lib
|__node_modules
|____<PACKAGE_BEING_USED_IN_FILES>
rollup.config.js
external: [
'react',
'<PACKAGE_BEING_USED_IN_FILES>',
],
通过正确添加我所有的外部依赖项。我能够解决此错误。
棘手的部分是 rollup
,没有给出关于这种特定依赖关系的警告.. 这有点让我陷入循环。