Реакция: неверный вызов с помощью Stackblitz - PullRequest
0 голосов
/ 20 октября 2019

Это мой первый раз, когда я использую Stackblitz для примера проекта, и я продолжаю сталкиваться с этой ошибкой:

Error in /turbo_modules/react@16.10.2/cjs/react.development.js (1607:26)
Invalid hook call.

Проект работает нормально локально и может компилироваться без ошибок на Stackblitz, однако, когда я нажимаюкнопка происходит ошибка.

https://stackblitz.com/edit/react-ef9gan

В моих операторах импорта в компонентах от 'import react from 'react' до import React, { Component } from 'react'

Я также удалил зависимость react-router-domиз stackblitz, поскольку он не нужен для этого проекта.

Согласно документации, это может произойти по трем причинам:

There are three common reasons you might be seeing it:

1. You might have mismatching versions of React and React DOM.
2. You might be breaking the Rules of Hooks.
3. You might have more than one copy of React in the same app.
  1. И мой локальный проект, иНапример, в обоих случаях запущено 16.9.0.

  2. Я относительно новичок, чтобы реагировать, поэтому я не уверен, что делаю что-то не так, поскольку он работает локально.

  3. Глядя на зависимости, я не вижу дубликатов файлов.

Я смотрел на этот вопрос SO почему материал-пользовательский интерфейсtextField возвращает 'Invalid hook call' error для решения, ноэто было для обновления версии React, поэтому я не уверен, куда идти, чтобы заставить это правильно скомпилировать.

1 Ответ

2 голосов
/ 20 октября 2019

Обновление вашей реактивной зависимости исправляет ее.

https://stackblitz.com/edit/react-wk49k9?file=index.js

Эти проблемы чаще возникают в более новых версиях реагирования, если авторы сторонних пакетов не определяют реакцию в качестве равноправной зависимости. Это часто может приводить к установке нескольких версий реагирующих папок пакетов в node_modules, вызывающих эту ошибку.

...