Ответ 1
Решено с помощью npm install [email protected] --save
По мнению авторов ajv
, проблема, скорее всего, будет решена в последней версии request
через несколько недель.
Я получаю три предупреждающих сообщения при импорте request
в проекте barebone webpack. Минимальный пример для воспроизведения ошибки доступен на GitHub (запустите npm install
и npm start
).
Critical dependency: the request of a dependency is an expression
Как я могу избавиться от этого предупреждения?
Дополнительная информация:
Webpack пытается разрешить require
вызовы статически, чтобы сделать минимальный пакет. Когда библиотека использует переменные в требуемом вызове (например, эти строки в ajv
), Webpack не может их устранить статически и импортирует весь пакет.
Мое обоснование заключается в том, что этот динамический импорт нежелателен в производстве, а код лучше всего хранить без предупреждения. Это означает, что я хочу любое решение, которое решает проблему. Например:.
hack.js
в мой проект, который каким-то образом переопределяет требуемые вызовы.ajv-5.0.1-beta.3
имеет исправление, которое блокирует предупреждения. Однако, если я хочу использовать его, мне нужно подождать, пока он не будет выпущен, а затем до har-validator
и request
отпустите последующие обновления. Если есть способ заставить har-validator
использовать бета-версию ajv
, это решит мою проблему.Решено с помощью npm install [email protected] --save
По мнению авторов ajv
, проблема, скорее всего, будет решена в последней версии request
через несколько недель.
Замените это
new webpack.ContextReplacementPlugin(
/angular(\\|\/)core(\\|\/)@angular/,
helpers.root('./src'), // location of your src
{} // a map of your routes
),
с этим -
new webpack.ContextReplacementPlugin( /(.+)?angular(\\|\/)core(.+)?/, root('./src'), {} )