@nqounetです。
タイトルのとおり、grunt serve:dist
で確認できる公開用のサイトで、デバッグ情報を出力しないようにするのに良い組み合わせがありました。
インストール
インストールするのは以下の2つです。
bowerとnpmでインストールします。
bowerInstall
が使える場合はついでにやっておきましょう。使えない場合は手動でloglevel
を追加する必要があります。
|
|
loglevel
loglevel
はconsole.debug('foo')
とか書いているものをlog.debug('foo')
と書くことができます。
そして、log.setLevel('debug')
というふうに、ログの出力するレベルを簡単に切り替えられるようになります。
デバッグなどでログを出力する時によく使う手法なのですが、これまでは自作のスクリプトを使っていました。
ライブラリがあればこちらを使うのが便利そうです。
grunt-remove-logging
デバッグ情報はリリース版には不要なので、リリース時には削除しておきたいですよね。
通常の場合は、そこでlog.setLevel('info');
とかにするわけですが、デバッグ出力の命令文自体を削除できるのであれば、そうするほうが良いに決まっています。
設定は今回の場合はこんな感じでタスクを追加すればいけます。
|
|
namespace
とmethods
の組み合わせで削除しているようなので、消そうと思えばなんでも消せそうですね。消しませんが。
実行するタイミングはuglify
の直前あたりが良さそうです。今のbuild
タスクはこんな感じです。
|
|
uglify
の後だと、スクリプトの書き方によってはnamespace
が変わっている場合があったり、削除されることで文法エラーが発生する場合(何故かセミコロンがカンマに変わっていたりする)があるので、uglify
よりは先に処理する方が無難だと思います。