如何解决ReactDom.render 在更新热模块时抛出非法调用
尝试集成 HMR 时,出现错误。我已按照文档进行了所有操作,但仍然无法解决问题。
Uncaught TypeError: Illegal invocation
at HTMLUnkNownElement.callCallback (react-dom.development.js:3945)
at Object.invokeGuardedCallbackDev (react-dom.development.js:3994)
at invokeGuardedCallback (react-dom.development.js:4056)
at flushPassiveEffectsImpl (react-dom.development.js:23543)
at unstable_runWithPriority (scheduler.development.js:646)
at runWithPriority$1 (react-dom.development.js:11276)
at flushPassiveEffects (react-dom.development.js:23447)
at react-dom.development.js:23324
at workLoop (scheduler.development.js:590)
at flushWork (scheduler.development.js:545)
at MessagePort.performWorkUntilDeadline (scheduler.development.js:157)
index.js 文件
import React from "react";
import ReactDOM from "react-dom";
import { browserRouter } from "react-router-dom";
import reportWebVitals from "@src/analytics/reportWebVitals";
import polyFills from "@utils/polyfills";
import sendToGoogleAnalytics from "@src/analytics/tracker/webVitalAnalytics";
import * as serviceWorker from "./serviceWorker";
import App from "./App";
let initialImports = Promise.all(polyFills());
// using mimic in development mode
if (process.env.NODE_ENV === "developments") {
initialImports = import("mimic");
}
const renderApp = (AppComponent) => () => {
ReactDOM.render(
<React.StrictMode>
<browserRouter basename={process.env.PUBLIC_URL}>
<AppComponent />
</browserRouter>
</React.StrictMode>,document.getElementById("root")
);
};
initialImports.then(renderApp(App));
// Enable Hot Module Replacement (HMR)
if (module.hot) {
module.hot.accept("./App",() => {
import("./App").then((mod) => {
const AppComponent = mod.default;
renderApp(AppComponent)();
});
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。