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

调用appendChild报parameter 1 is not of type 'Node'错误如何解决

错误原因
  • 原生DOM API appendChild 要求入参必须是浏览器原生Node节点类型,但React.createElement返回的是React虚拟DOM元素对象,不属于原生Node类型,因此触发类型报错。
  • 代码末尾console.log(header)引用了未声明的header变量,运行时会额外抛出ReferenceError。
修复方案

方案1:使用React官方渲染API(推荐)

项目基于React开发时,直接使用ReactDOM提供的挂载方法即可,不需要手动调用原生appendChild:

React 17及更早版本代码示例

import React from 'react';
import ReactDOM from 'react-dom';

const title = React.createElement(
  'h1',
  null,
  'Hello World',
);
ReactDOM.render(title, document.body);
console.log(title);

React 18+版本代码示例

import React from 'react';
import ReactDOM from 'react-dom/client';

const title = React.createElement(
  'h1',
  null,
  'Hello World',
);

const root = ReactDOM.createRoot(document.body);
root.render(title);
console.log(title);

方案2:使用原生DOM API创建节点

如果不需要使用React能力,可以直接创建原生DOM节点再插入:

function append(child) {
  document.body.appendChild(child);
};

const title = document.createElement('h1');
title.textContent = 'Hello World';
append(title);
console.log(title);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 23:06:06