ソースマップを生成するための gulp-sourcemaps とともに、gulp を使用してプロジェクトをビルドしています。
私はこのようないくつかのコンポーネントを持っています:
public
|-- src
|-- comp1
| |-- c1-a.js
| |-- c1-b.js
|
|-- comp2
|-- c2-a.js
|-- c2-b.js
それらを次の構造に組み込みたいと思います。
public
|-- dist
| |-- comp1
| | |-- c1-a.min.js
| | |-- c1-a.min.js.map
| | |-- c1-b.min.js
| | |-- c1-b.min.js.map
| |
| |-- comp2
| |-- c2-a.min.js
| |-- c2-a.min.js.map
| |-- c2-b.min.js
| |-- c2-a.min.js.map
|
|-- src/
現在、私のgulpタスクはファイルを正しいパスに生成できます:
gulp.task('component', function() {
gulp.src('./public/src/**/*.js', {base: './public/src'})
.pipe(sourcemaps.init())
.pipe(uglify())
.pipe(rename({suffix: '.min'}))
.pipe(sourcemaps.write('.', {
includeContent: false,
sourceRoot: '/src/' // here's the problem
}))
.pipe(gulp.dest('./public/dist'))
})
しかし、2 つの問題があります。
sourceRoot
マップファイルが正しくありません: 期待していますが"sourceRoot":"/src/comp1/"
、結果は"sourceRoot":"/src/"
どちらも
sourceMappingURL
圧縮ファイルでは行いません: 期待していますsourceMappingURL=c1-a.min.js.map
が、結果はsourceMappingURL=../../comp1/c1-a.min.js.map
sourceMappingURLに**
パーツを追加して修正するにはどうすればよいですか?sourceRoot