【发布时间】:2017-02-17 07:20:49
【问题描述】:
我有一个具有以下文件夹结构的 nodejs 应用程序:
project
|-- src/
| |-- controllers/
| | |`-- authorize-controller.ts
| |`-- index.ts
|--dist/
| |--controllers/
| | |`-- authorize-controller.js
| | |`-- authorize-controller.js.map
| |`-- index.js
| |`-- index.js.map
`-- gulpfile.js
`-- tsconfig.json
源地图已生成。 index.js.map 指向“../src/index.ts”(正确)。地图文件对应内容为{"version":3,"sources":["../src/index.ts"],"names":[],"mappings"
但是 dist\controllers\authorize-controller.js.map 指向了错误的目录。它有{"version":3,"sources":["../src/controllers/authentication.controller.ts"],"names":[],。缺少一个../。
我的 gulpfile.js 是:
gulp.task('compile', () => {
var tsResult = tsProject.src()
.pipe(sourcemaps.init())
.pipe(tsProject());
return tsResult.js
.pipe(sourcemaps.write('.', { includeContent: false, sourceRoot: '/src' }))
.pipe(gulp.dest('dist'));
});
我的 tsconfig.json 是:
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"noImplicitAny": false,
"sourceMap": true,
"outDir": "dist"
},
"include": [
"src/**/*.ts"
],
"exclude": [
"node_modules",
"dist",
".vscode"
]
}
我做错了什么? gulp-sourcemaps 似乎忽略了 sourceRoot。
【问题讨论】:
标签: javascript node.js typescript gulp gulp-sourcemaps