React-hot-loader: не обнаружен патч реагирования - PullRequest
0 голосов
/ 19 февраля 2019

Я обновил несколько пакетов npm в своем проекте Gatsby, и теперь я вижу это предупреждение в консоли:

React-hot-loader: react-?-dom patch is not detected. React 16.6+ features may not work.

Однако, когда я просматриваю исходный код, появляетсякомментарий:

// Actually everything works...

Что на самом деле означает это предупреждение?Это то, что я должен исправить или просто оставить?

Ответы [ 3 ]

0 голосов
/ 22 февраля 2019

На мой комментарий выше, похоже, что react-hot-loader хочет пакет @hot-loader/react-dom вместо стандартного react-dom:

Лично я немного обеспокоен заменой этого, хотя, поскольку react-dom является основной частью любого приложения на основе react.Кроме того, кажется, основываясь на некоторых связанных проблемах и комментариях к коду, что, возможно, это всего лишь кратковременный обходной путь для поддержки новых функций реагирования, таких как ловушки.

Так что, я думаю, есть два варианта:

  • Подождите немного, чтобы увидеть, если они откажутся от этого требования (и, возможно, сделка столкнется с несколькими крайними случаями для горячей загрузки).
  • Следуйте инструкциям , чтобы избавиться от предупреждения.

Обновление

Вы можете отключить предупреждение следующим образом:

import { hot, setConfig } from 'react-hot-loader'

setConfig({
    showReactDomPatchNotification: false
})
0 голосов
/ 07 марта 2019

Короче говоря - React-Hot-Loader - это то, что "может не работать".У него много проблем и ограничений.

«горячее исправление» было создано, чтобы (во-первых) поддерживать новые функции React, и (во-вторых) сделать его более стабильным .

  • Без этого патча - что-то действительно может не работать.
  • С патчем - что-то может работать лучше, особенно в будущем.

Это единственная наша (хорошо, моя) надежда смягчить основные проблемы, которые есть у БРЗ, и отслеживается как "версия 5" - https://github.com/gaearon/react-hot-loader/milestone/3

hot-loader/react-dom не являетсяlib "третьей стороны" - это тот же react-dom с некоторыми исправлениями, примененными только к dev mode (вы можете проверить сценарии сборки).

Он просто перемещает немного темной магии, которую БРЗ использует для работы, внутри реагирует и фактически удаляет ее.БРЗ == черная магия.БРЗ + патч == вдвое меньше магии.

0 голосов
/ 21 февраля 2019

Так что, похоже, это артефакт процесса разработки.Похоже, что было что-то делать в этом случае.Сообщение об ошибке было закомментировано, а затем добавлено в качестве исправления для проблемы: https://github.com/gaearon/react-hot-loader/commit/efc3d6b5a58df77f6e0d5ca21bef54e8f8732070.

Итак, похоже, что это незначительное предупреждение, и вы можете быть в порядке, если вам не нужноспецифические особенности

Возможно, было бы неплохо попросить прояснить это у сопровождающих, так как они, кажется, немного запутались сами:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...