Я недавно начал получать эту ошибку в проекте Angular 8 (узел v10.16.0), над которым я работаю. Запуск npm-обновления caniuse-lite browserslist ничего не сделал
Поэтому я удалил package-lock.json, удалил node_modules и запустил npm install, но файл списка браузера исчез. Снова, когда я запускаю ng build, я получаю то же сообщение: Browserslist: caniuse-lite устарел. Пожалуйста, запустите следующую командуnpm update
Я вижу этот пост на ту же тему : Список обозревателей: caniuse-lite устарел. Пожалуйста, запустите следующую команду `npm update caniuse-lite browserslist`. Однако речь идет о WebCompiler и autoprefixer, и я понятия не имею о них. Пожалуйста, руководство
angular
npm-install
тарпон
источник
источник
npm update caniuse-lite browserslist
?npm update
но это не решает проблему, просто сделал мою версию машинописи высокой для angular 8.Ответы:
Решил caniuse-lite устаревшую проблему, выполнив следующие команды.
источник
npm cache clean
не работает напрямую, так как он обрабатывается npm автоматически в последних версиях. Вы хотите, чтобы мы использовали--force
? Если да, пожалуйста, объясните, почему мы должны уничтожать кеш.npm install caniuse-lite@latest --save
TLDR: (может показаться нелогичным без объяснения причин)
Объяснение:
Это предупреждение msg («canisuse-lite устарел, пожалуйста ....») выводится скриптами в список браузеров во время сборки / запуска, если обнаруживает, что установленная версия caniuse-lite старше 2 версий из текущей версии. Если в вашем проекте ничего не изменилось и вы неожиданно видите это сообщение при запуске или создании проекта, это, вероятно, означает, что недавно было обновлено обновление до caniuse-lite.
К сожалению, текстовое сообщение, которое отображает список браузеров, полезно, только если вы установили caniuse-lite как зависимость вашего проекта. Скорее всего, вы этого не сделали. Поэтому, когда вы запускаете предложенное npm update caniuse-lite или npm update caniuse-lite @ latest (или npm install), npm не видит этот пакет, указанный в ваших зависимостях package.json, поэтому он игнорирует запрос.
Как эти пакеты стали зависимостями? Когда ваш проект был создан (возможно, с помощью приложения angularapp или create-Reaction-app или аналогичного для вашей платформы), npm установил список браузеров как зависимость от необходимых инструментов, а не как одну из зависимостей вашего проекта. В то же время caniuse-lite был установлен как список браузеров. Позже, когда проект был обновлен, был создан файл package-lock.json, который блокирует все зависимости для конкретной версии.
Если вы смогли обновить информацию о версии в списке зависимостей в package-lock.json, то запуск npm install приведет к обновлению этих пакетов в node_modules. Вы не должны редактировать package-lock.json вручную. Вместо этого лучший способ сделать это:
Временно сделайте эти пакеты зависимыми от вашего проекта:
npm установить список браузеров caniuse-lite
В дополнение к обновлению пакета до последней версии это обновляет список зависимостей в package.json и (что наиболее важно) package-lock.json.
Удалите эти пакеты как прямые зависимости вашего проекта:
npm удалить список браузеров caniuse-lite
Поскольку эти пакеты используются другими зависимостями, они не удаляются из node_modules. Только package.json обновляется, чтобы удалить их как зависимость проекта.
Зафиксируйте package-lock.json. Любой другой может теперь просто запустить 'npm install', чтобы получить обновленные два пакета из списка подчиненных зависимостей в package-lock.json и остановить сообщение с предупреждением.
источник
npm update
) и с чистой угловой настройкой.caniuse-lite
и сообщение ушло