2017-04-24 10 views
0

生産のコードを縮小/拡大する必要がありますが、ソースではES 6を使用しています(そしてBabelで変換します)。UglifyJS(Grunt)の後に元の(バベル以前の)ソースのソースマップを生成する方法

私はトランスリングされたコードでUglifyJSを実行した後、ソースマップを元のES 6ソースコードに維持する正しいワークフローを理解しようとしています。

私たちはGruntJSを使用しています。

既存のソリューションはありますか?

答えて

1

Firsly、ビルド設定によっては、質問を簡単に答えることができます。しかし、あなたがバベルとウグリエフを別々に走らせると仮定すると、このように言う:

grunt.initConfig({ 
    babel: { 
    options: { 
     sourceMap: true 
    }, 
    dist: { 
     files: { 
     "dist/app.js": "src/app.js" 
     } 
    } 
    }, 
    uglify: { 
    my_target: { 
     files: { 
     'dist/app.min.js': ['dist/app.js'] 
     } 
    } 
    }  
}); 

あなたは次のようにbabel-plugin-uglifyを使用する必要があります。

grunt.initConfig({ 
    babel: { 
    options: { 
     sourceMap: true, 
     plugins: ["uglify:after"] 
    }, 
    dist: { 
     files: { 
     "dist/app.min.js": "src/app.js" 
     } 
    } 
    }  
}); 
+0

感謝を!私はこれを試して更新します。現在のビルドでは、uglifying前にbabelソースマップを削除します。 uglifyタスクの後にこのステップを移動するか、それをすべて削除する必要がありますか? – krulik

+0

確かにわからないビルドプロセス中にバーベルソースマップを削除する理由を理解しています。特定のフロー(プロダクションビルド)でソースマップを使用したくない場合は、バーベルでソースマップをオフにする方が良いでしょう。 – mikeapr4

+0

ありがとうございました。それはバベルとの最初の探査の成果物です。 – krulik

関連する問題