追記 プラグイン使ってね
コメントいただきました。ありがとうございます。現在は不要な言語カットはプラグインで簡単にできます。
moment-locales-webpack-pluginを使うともうちょっと楽に使うlocaleを絞れそうですー。
http://momentjs.com/docs/#/use-it/webpack/
追記
かつてのバージョンは以下のように記述すれば、localeファイルを除いてmoment.jsをインポートできたんですが、最新のは普通に全てインポートされます。
import moment from 'moment/moment'
おとなしく webpack.IgnorePlugin とか使ってください。
plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
]
moment.jsを普通にimportすると全ての言語ファイルも含まれてしまいファイルサイズが大きくなってしまいます。それを回避するため、webpack.config.jsでmoment.jsを言語ファイルを除いてimport方法が紹介されてたりします。
webpack で moment.js の無駄なロケールファイルを除去する
plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
]
この方法のもと、moment.jsを日本語に設定して使うとき以下のように書く必要があります。
import moment from 'moment'
import 'moment/locale/ja'
moment.locale('ja')
console.log(moment().format('M月D日(dd)')) // => 12月3日(日)
日本語設定にしたものをimport
日本語設定が前提のときは、毎回これを書くのもだるいので、日本語設定されたmoment.jsをexportするファイルを作ってaliasを設定してあげるとスマートかと。日本語以外の言語ファイルも読み込まれません。
↓
import moment from 'moment/moment'
import 'moment/locale/ja'
moment.locale('ja')
export default moment
resolve: {
alias: {
'moment-ja': path.join(__dirname, 'src/moment-ja.js')
}
}
import moment from 'moment-ja'
console.log(moment().format('M月D日(dd)')) // => 12月3日(日)