使用TypeScript对节点包进行本地更改

我很新的使用npm和TypeScript,所以我希望我失去了一些明显的东西。 我们编写了一个用TypeScript编写的节点包供我们自己内部使用。 所以,源码是用Typescript编写的,文件结构如下所示:

src/myModule.ts myModule.ts 

myModule.ts如下所示:

 export * from "./src/myModule"; 

然后运行tsc生成.js和.d.ts文件。 所以,这些文件看起来像这样:

 src/myModule.js src/myModule.ts src/myModule.d.ts myModule.js myModule.ts myModule.d.ts 

所有这一切都推到混帐,然后我们的主要应用程序包括这个包作为依赖通过git的URL。 当我第一次尝试这个时,我得到了这样一个错误:

 export * from "./src/myModule"; ^ ParseError: 'import' and 'export' may appear only with 'sourceType: module' 

经过一番search之后,我发现问题出在了被加载的.ts文件中,所以我在.npmignore添加了以下.npmignore

 *.ts !*.d.ts 

这样做之后,它会带来节点包,没有任何问题。

我遇到的问题是,我希望能够在活动的开发过程中运行节点包的本地更改。 我希望能够在节点包中进行更改,然后让主应用程序获取这些更改,以便在推送到git之前确保所有内容一起工作。 我发现的一切都说使用npm link 。 这使得它指向我的本地目录按预期,但问题是,它现在有所有.ts文件,并出现相同的错误。

我确信当所有的东西都用JavaScript编写的时候, npm link工作的很好,但是我们使用TypeScript来写所有东西。 有没有办法使这与TypeScript的工作?

这使得它指向我的本地目录按预期,但问题是,它现在有所有.ts文件,并出现相同的错误。

这些错误只会显示,如果你有.ts文件这些文件的单独声明

build议修复

只需使用单独的 .ts / .js / .d.ts文件,避免捆绑单个.d.ts