Gatsby: [v2] Ошибка: не удается найти модуль core-js / modules / es6.array.filter.

Созданный на 4 сент. 2018  ·  25Комментарии  ·  Источник: gatsbyjs/gatsby

Описание

gatsby develop возвращает указанную выше ошибку

Действия по воспроизведению

Я обновил сайт с версии 2 до версии 2, скопировав свои зависимости, модули и страницы поверх и следуя руководству здесь: https://next.gatsbyjs.org/docs/migrating-from-v1-to-v2/

Среда

  System:
    OS: macOS High Sierra 10.13.6
    CPU: x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
    Shell: 5.3 - /bin/zsh
  Binaries:
    Node: 8.11.3 - /usr/local/bin/node
    Yarn: 1.7.0 - /usr/local/bin/yarn
    npm: 6.4.0 - /usr/local/bin/npm
  Browsers:
    Chrome: 68.0.3440.106
    Safari: 11.1.2
  npmPackages:
    gatsby: 2.0.0-rc.9 => 2.0.0-rc.9 
    gatsby-plugin-canonical-urls: ^2.0.0-rc.1 => 2.0.0-rc.1 
    gatsby-plugin-google-tagmanager: ^2.0.0-rc.1 => 2.0.0-rc.1 
    gatsby-plugin-manifest: next => 2.0.2-rc.1 
    gatsby-plugin-offline: next => 2.0.0-rc.2 
    gatsby-plugin-react-helmet: ^3.0.0-rc.1 => 3.0.0-rc.1 
    gatsby-plugin-remove-trailing-slashes: ^2.0.0-rc.1 => 2.0.0-rc.1 
    gatsby-plugin-robots-txt: ^1.3.0 => 1.3.0 
    gatsby-plugin-sitemap: ^2.0.0-rc.1 => 2.0.0-rc.1 
    gatsby-plugin-styled-components: ^3.0.0-rc.1 => 3.0.0-rc.1 
    gatsby-source-apiserver: ^1.3.1 => 1.3.1 
    gatsby-source-filesystem: ^2.0.1-rc.1 => 2.0.1-rc.1 
    gatsby-source-wordpress: ^3.0.0-rc.1 => 3.0.0-rc.1 
    gatsby-transformer-javascript-frontmatter: ^2.0.0-rc.2 => 2.0.0-rc.2 
    gatsby-transformer-json: ^2.1.1-rc.1 => 2.1.1-rc.1 
  npmGlobalPackages:
    gatsby-cli: 1.1.58

Я пробовал установить babel-preset-env и удалить node_modules и переустановить.

Самый полезный комментарий

Спасибо, Пие, да, попробовал, боюсь, нет.

На самом деле я просто исправил это, запустив npm install --save core-js

Все 25 Комментарий

Можете ли вы попробовать удалить файлы блокировки (yarn.lock / package-lock.json) и node_modules и снова переустановить?

Спасибо, Пие, да, попробовал, боюсь, нет.

На самом деле я просто исправил это, запустив npm install --save core-js

Потрясающие!

У вас все еще есть полный вывод ошибок (с трассировкой стека)? Было бы хорошо исправить это, если это связано с gatsby а не с одним из пакетов третьей части?

У меня была такая же проблема, и я определил ее в babel, удалив зависимость core-js в их бета-версиях 7.0.0, прежде чем они снова добавят ее в свою окончательную версию.

@kmorf хороший найден! У меня такая же проблема.

У меня была такая же проблема, и я определил ее в babel, удалив зависимость core-js в их бета-версиях 7.0.0, прежде чем они снова добавят ее в свою окончательную версию.

Верно, это не то, что gatsby может исправить, верно?

Также эта ошибка возникает в узле или в браузере? Определенно нужна дополнительная информация здесь, чтобы знать, действительно ли это должно быть проблемой здесь или что-то, что произошло выше по течению, и мы не можем контролировать: /

Я не думаю, что gatsby должен пытаться это исправить. Когда это происходило, было много разных проектов React, которые терпели неудачу, поэтому пользователи добавили core-js в свои devDependencies. У меня не было этой проблемы с тех пор, как был выпущен babel 7.0.0 .

А пока закроем это (снова :))

Я снова столкнулся с проблемой только сейчас. Я прикрепляю фиксацию к своему gatsby-node.js . Я думаю, что получил ошибку, когда использовал _.each вместо .forEach .

screen shot 2018-09-05 at 6 42 24 pm

Я тоже столкнулся с этой проблемой, и я думаю, что ее можно вернуть к изменениям Babel 7 для пакета @babel/polyfill . Также см. Mdx-js / mdx # 271 для подробного описания моего текущего анализа. В настоящее время единственный способ избавиться от этого - добавить @babel/polyfill качестве зависимости разработчика, которая, как описано в приведенном выше руководстве по миграции, теперь является более или менее просто прокси для пакета core-js v2. .

Я тоже вижу эту проблему и могу подтвердить, что недавнее изменение в Babel сломало сборку. Теперь исследуем, как это можно исправить в Гэтсби. (Добавление core-js к devDependencies ничего не дало для сборки, что я могу сказать.)

@secretfader Вы можете добавить @babel/polyfill в свой devDependencies , он автоматически загрузит необходимые core-js полифиллы. Обязательно удалите папку node_modules и, возможно, файл package-lock.json и запустите npm install чтобы начать с чистого разрешенного дерева зависимостей.

Я могу воспроизвести проблему. Если вы ищете репозиторий для воспроизведения, https://github.com/mui-org/material-ui/blob/master/examples/gatsby/README.md - хороший вариант.

@secretfader Вы можете добавить @babel/polyfill в свой devDependencies , он автоматически загрузит необходимые core-js полифиллы. Обязательно удалите папку node_modules и, возможно, файл package-lock.json и запустите npm install чтобы начать с чистого разрешенного дерева зависимостей.

Добавление "@babel/polyfill": "^7.0.0", и следование этим инструкциям у меня не сработало.
Добавление core-js действительно сработало npm install --save core-js .

@ ben-rogerson Мне следовало обновить свой комментарий, потому что ошибка возникла снова после того, как я удалил свой package-lock.json . Похоже, что зависимости не были разрешены правильно, но, по иронии судьбы, после этого все заработало. Иногда npm - это загадка радужных единорогов: roll_eyes: Также в mdx-js / mdx # 271 сопровождающий написал, что он не работал с npm , но при использовании yarn все работает нормально.

Я поиграю с результатами при добавлении core-js или @babel/polyfill качестве зависимости, но мне любопытно, почему это работает после того, как core-js уже разрешено через gatsby и без явного импорта полифила в коде я не вижу разницы между решением devDependencies .

Просто к сведению, но я недавно переключился с Yarn на NPM на одном из моих сайтов Gatsby и столкнулся с этой проблемой.

Как заявляет @arcticicestudio , это кажется особенно странным, учитывая, что gatsby перечисляет core-js как зависимость.

Дополнительная информация: после очистки .cache, node_modules и package-lock.json и повторной установки модулей через npm я получил
WebpackError: Cannot find module 'core-js/modules/es6.array.sort'
Установка core-js напрямую решает проблему.

пряжа добавить core-js
Если вы по-прежнему не можете удалить node_modules, используйте yarn для установки, не используйте cnpm для установки;

Я тоже сталкиваюсь с этой проблемой.

Изначально я запускал версию Storybook 5.1.0-alpha.X . Если я запустил yarn why core-js доминирующая версия core-js (поднятая до core-js ) будет 2.6.5 .

После обновления до Storybook 5.1.0-beta.0 сегодня поднятая версия core-js превратилась в 3.0.1 , что по какой-то причине сломало сборку Gatsby.

Почему Гэтсби не разрешает фактическую версию core-js из своих зависимостей?

Я попробовал обходной путь, добавив core-js к моему devDependencies напрямую, но это не решило проблему.

Я была такая же проблема.

Понижение моей версии с core-js до 2.6.5 (зависимость от разработчиков) исправило это.

npm install --save core-js больше не работает.

Вместо этого используйте npm install --save --dev [email protected] .

Однако попробуйте запустить npm install --dev [email protected] в каталоге проекта, чтобы не сохранять его глобально.

Если предыдущее не работает, используйте:

npm install --save [email protected] -g

Это работает, но не делайте этого

Я предполагаю, что причиной этой проблемы было то, что я использовал npm для обновления и работы над проектом, который изначально был запущен с yarn . Отсюда и беспорядок. Как указала arcticicestudio. *

Если предыдущее не работает, используйте:

npm install --save [email protected] -g

Глобальная установка таких пакетов - действительно плохая идея, и нет никаких причин для этого. Если у вас возникли проблемы при локальной установке (с закрепленной версией), это может быть связано с тем, что вы уже установили другие пакеты по всему миру, которые сейчас вызывают конфликты.
Думаю, основная проблема этого билета - npm . Похоже, что он не разрешает дерево зависимостей правильно. Я перешел на yarn прошлом году (в основном из-за _workspaces_) и больше никогда не испытывал проблем. Я думаю _npm_ пользователи должны использовать обходной путь, закрепив версию и надежду на то, что _npm_ 8 (который будет питаться от своего нового TINK Lib, объявил в своем _npm Дорожная карта Summer 2019_ блог) исправляет такие проблемы (или переключиться на yarn для проектов на основе _Gatsby_).

Спасибо, Пие, да, попробовал, боюсь, нет.

На самом деле я просто исправил это, запустив npm install --save core-js

Все заработало благодаря этому!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги