tl; dr:模块分辨率不适用?Typescript2路径模块分辨率
你好,
我正在玩Typescript2模块分辨率功能。
我注意到,现在可以指定 “路径”,这样就可以做到以下几点:
老办法
import {a} from "../../../foo"
新方式
import {a} from "services/foo"
要做到这一点,你需要添加一些配置到你的tsconfig.json
"compilerOptions": {
"baseUrl": ".",
"paths": {
"services/*": ["./application/core/services/*"],
}
}
问题是我编译时导入实际上没有改变。我的JavaScript输出仍然包含从“services/foo”导入,所以在运行时显然会在我的节点服务器上崩溃。
我用一口-打字稿编译我的javascript文件:
var tsProject = ts.createProject("tsconfig.json");
return tsProject.src()
.pipe(sourcemaps.init())
.pipe(tsProject()).js
.pipe(sourcemaps.write("../api"))
.pipe(gulp.dest(function(file) {
return file.base;
}));
我完全失去了这里,并愿意使用该模块的分辨率,这样我可以从移开../../地狱的进口。任何帮助将不胜感激!