我正在开发一个具有两个子项目的项目:我们将它们称为 ProjectA
和 ProjectB
。这些是完全不同的项目,但都是用 Typescript 编写并使用 webpack 作为 bundler 。
在开发过程中,我想在 ProjectB
中使用 ProjectA
的某些部分,但总体要求是 ProjectB
必须使用来自ProjectA
作为外部依赖项 - 通过脚本标记,而不是通过 npm 安装等。
所以我的想法是使用 webpack
输出配置属性的库选项来捆绑 ProjectA
的代码,将生成的包托管在某处,并将其包含在ProjectB
通过脚本标签。但由于我在开发 ProjectB
期间会使用 ProjectA
中的一些函数,因此我也希望拥有 Typescript
的优势。
有人能指出我正确的方向吗?
最佳答案
创建两个子文件夹,/a/
和 /b/
,然后使用 aliases轻松地从 a 引用 b:
// webpack.config.js
module.exports = {
//...
resolve: {
alias: {
b: path.resolve(__dirname, '../b/')
}
}
};
然后您可以轻松地在各部分之间导入:
import Something from "b/something";
but overall requirement is that ProjectB must consume all code from ProjectA as an external dependency -
然后在/b/
中添加另一个webpack文件,将b外部构建为a library并将其添加为 external至:
externals: {
b: "b"
}
关于javascript - 通过 Typescript 支持将一个项目中的捆绑代码包含到另一个项目中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52842277/