grunt-wiredep使用の環境でmomentの日本語ロケールファイルを含めたい
より正確にいうとgrunt-wiredep使用の環境でangular-momentでロケール指定したい、ということ。
angular-momentをインストールする
% bower install angular-moment --save
これでmomentも依存関係でインストールされて、wiredepで差し込まれてめでたしめでたし…
index.html
<!-- bower:js --> <!-- 略 --> <script src="bower_components/moment/moment.js"></script> <script src="bower_components/angular-moment/angular-moment.js"></script> <!-- endbower -->
いやいや、これだとロケールファイルが含まれていない。
bower_components/下のmomentを見ると、minディレクトリにmoment-with-locales.jsがある。
なので、プロジェクトのbower.jsonでmainをoverrideする。
bower.json
{ // 略 "overrides": { "moment": { "main": "min/moment-with-locales.js" }, "angular-i18n": { "main": "angular-locale_ja-jp.js" } }
ロケール入りになった。
index.html
<!-- bower:js --> <!-- 略 --> <script src="bower_components/moment/min/moment-with-locales.js"></script> <script src="bower_components/angular-moment/angular-moment.js"></script> <!-- endbower -->
これで設定できる
app.coffee
myapp.run((amMoment) -> amMoment.changeLanguage('ja') )