2016-07-11 18 views
6

誰かが助けてくれるかどうか疑問に思っていましたが、私は現在、es6> es5とbabelを使ってビルドプロセスを終わらせようとしています。 NPMスクリプトだけを使ってすべての.jsファイルを小さくしてください。UglifyJS - フォルダ内のすべての.jsを変換する

私が望むのは、

  • uglify
  • を使用して、指定されたフォルダ内のすべての.jsファイルは、ソースを作成します
  • 縮小化をES5するために、フォルダ内のすべての.jsを変換し

私の新しいフォルダに出

  • コピーをマップ現在の設定。

    (別のフォルダに移動する一切のサポートをtheresのようしかし何sourcemapsがES5のjsファイルが置き換えられますまた、作成されません)
  • 縮小化すべてES5の.jsファイルをES5するために、すべての.jsに変換します

    私が試した:https://www.npmjs.com/package/recursive-uglifyjshttps://www.npmjs.com/package/uglifyjs-folderが、これらの両方が、私はここで

    を必要とするビルド手順を実行することができないようだが、私のpackage.jsonスクリプトセクションは

    です3210
    "babel": "babel js_uncompiled --out-dir js_uncompiled/es5 --source-maps && npm run npm:uglify", 
        "build": "npm run babel", 
        "uglify": "recursive-uglifyjs js_uncompiled/es5" 
    

    あなたがここに私の完全なpackage.jsonへのリンクを見つけることができます。http://pastebin.com/4UHZ1SGM

    おかげ

  • 答えて

    0

    EDITEDは:今uglifyjs-folderは、設定ファイルを渡すオプションがあり、コメントので

    からの情報が含まれてすべてのuglifyのコマンドを実行することができますが、フォルダ全体で実行することができます(また、ハーモニーを使用してES5に移行することもできます - as stated in comments)。

    注これは、単一の出力ファイル(連結)を生成することができるuglifyjsフォルダので、手動catまたは他のシェルコマンドで行うよりも良好であり、使用が簡単です。 (プロジェクトのルートフォルダに)設定ファイルには、例えば含ま

    実行uglifyjs-folder "%CD%" --config-file "uglify.config.json" --output "folder" -e(ないすべてのオプションが必要):

    { "compress": true, "mangle": true, "sourceMap": { "base": "input/path/", "content": "input/sourcemap", "filename": "{file}.min.js", "includeSources": true, "root": "original/source/path", "url": "source/path" } }

    OBS:現在のソース - 理由は自分で1 open issueがありますマッピングがエラーになります。問題が解決したら、ここで私の答えを更新します。

    更新:問題が解決しました。バージョン1.5がリリースされました。コードが更新されました

    +1

    'uglifyjs-folder'はハーモニーを使ってES5に移行することができます。 –

    +0

    ありがとう@PranavSingh、私の答えを更新 –

    関連する問題