Как использовать момент-часовой пояс с webpack?
При использовании webpack для создания моего проекта, я обычно требую модули в CommonJS из модулей npm. Мне нужен момент времени в моем проекте, однако при создании пакета вы также должны собрать все данные из момента времени, что может быть довольно много.
Кроме того, сборка не выполняется со следующей ошибкой:
ERROR in ./~/moment-timezone/data/packed/latest.json
Module parse failed: /site/node_modules/moment-timezone/data/packed/latest.json Line 2: Unexpected token :
You may need an appropriate loader to handle this file type.
| {
| "version": "2015a",
| "zones": [
| "Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q",
@ ./~/moment-timezone/index.js 4:15-51
На данный момент я не так обеспокоен сбоем сборки, поскольку я имею в виду размер сборки, если она действительно преуспевает. Хотя, очевидно, что некорректная сборка должна быть решена в какой-то момент.
Я был бы признателен за любые указания относительно того, как справиться с этим, особенно если кто-то из вас столкнулся с этой проблемой, используя webpack (возможно, также и для браузера).
Ответы
Ответ 1
Вы можете исправить это, добавив загрузчик JSON в конфигурацию вашего веб-пакета.
$npm install json-loader
И добавьте его в свои загрузчики в webpack.config.js. Не забудьте также добавить расширение.
{
module: {
loaders: [
{include: /\.json$/, loaders: ["json-loader"]}
]
},
resolve: {
extensions: ['', '.json', '.jsx', '.js']
}
}
Ответ 2
Если вы используете webpack 2.x(в настоящее время в бета-версии)
npm install json-loader
затем включите это в rules
{
test: /\.json$/,
loader: "json-loader"
}