You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React-Django项目中ReactDOM的render方法调用失效该如何解决?

问题根源

你当前项目安装的是React 18及更高版本,该版本已经废弃并移除了旧版本react-dom直接导出的render API,和你使用类组件、Django集成逻辑无关,就是版本迭代导致的API不兼容问题。你可以先查看项目根目录package.json文件中react、react-dom的版本号,确认是18.x版本即可验证该问题。

解决方案

有两种可选方案,按需选择即可:

方案1:适配React 18新API(推荐)

修改入口文件的react-dom导入和渲染逻辑,调整后的完整代码如下:

import React, { Component } from "react";
import { createRoot } from "react-dom/client";
import HomePage from "./HomePage";

export default class App extends Component {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <div className="center">
        <HomePage />
      </div>
    );
  }
}

const appDiv = document.getElementById("app");
const root = createRoot(appDiv);
root.render(<App />);

方案2:降级React版本沿用旧写法

如果不想修改代码,可将React相关依赖降级到17.x版本,在package.json中修改对应依赖版本:

{
  "dependencies": {
    "react": "^17.0.2",
    "react-dom": "^17.0.2"
  }
}

修改后重新执行依赖安装命令即可生效。

内容的提问来源于stack exchange,提问作者DillonB07

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 02:18:00