在 typescript 输出中包含 NPM 模块 (--module System.js)
Include NPM modules in typescript output (--module System.js)
我正在将一个项目从 ES6 转换为 Typescript。 TSConfig 文件设置以下选项:
{
"compilerOptions": {
"target": "es5",
"module": "system",
"out": "qqq.js",
"allowJs": true,
}
在我的代码中,我导入了 node_modules
中的 NPM 模块。这也是我在使用 Typescript 之前所做的。
import React from 'react'; // This is an NPM module.
// . . .
运行 typescript 编译器生成了一个几乎 可用的 *.js 包,但它缺少所有 NPM 模块。
如何配置 Typescript 在构建 System.js 包时包含我的所有 NPM 依赖项(不仅仅是本地文件)?
TypeScript 不会为您捆绑 NPM 依赖项,您需要使用 SystemJS Builder 之类的东西进行捆绑。
您必须自己创建部署包。供您查看的两个有用示例是:
这是开始寻找解决方案的好地方。不要为它用于angular2而烦恼。它仍然完全符合您的要求 - 编译 TS 文件并准备包含所有引用 node_modules 的捆绑包。
如果您想尝试使用 webpack 创建捆绑包,欢迎您查看这个相同的示例:
希望对您有所帮助。
我正在将一个项目从 ES6 转换为 Typescript。 TSConfig 文件设置以下选项:
{
"compilerOptions": {
"target": "es5",
"module": "system",
"out": "qqq.js",
"allowJs": true,
}
在我的代码中,我导入了 node_modules
中的 NPM 模块。这也是我在使用 Typescript 之前所做的。
import React from 'react'; // This is an NPM module.
// . . .
运行 typescript 编译器生成了一个几乎 可用的 *.js 包,但它缺少所有 NPM 模块。
如何配置 Typescript 在构建 System.js 包时包含我的所有 NPM 依赖项(不仅仅是本地文件)?
TypeScript 不会为您捆绑 NPM 依赖项,您需要使用 SystemJS Builder 之类的东西进行捆绑。
您必须自己创建部署包。供您查看的两个有用示例是:
这是开始寻找解决方案的好地方。不要为它用于angular2而烦恼。它仍然完全符合您的要求 - 编译 TS 文件并准备包含所有引用 node_modules 的捆绑包。
如果您想尝试使用 webpack 创建捆绑包,欢迎您查看这个相同的示例:
希望对您有所帮助。