为什么无法使用 ReactJS 渲染 HTML

Jos*_*ose 5 node.js typescript reactjs visual-studio-code

我在网上看到了大量使用 React 和 Typescript 的示例和测试,它们发出如下内容:

import * as ReactDOM from 'react-dom';

ReactDOM.render(
 <h1>Hello world!!</h1>, //or any other valid html snippet
 document.getElementById('root') as HTMLElement
);
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试在我的机器中重现这些多个示例时,我首先收到 VS code 的突出显示错误,然后当我尝试捆绑时收到此错误:

TS2686:“React”指的是 UMD 全局,但当前文件是一个模块。考虑添加导入。

如果我不将 HTML 作为函数的参数,而是编写 a my SimpleComponent.render(),则将生成没有错误的包。

该代码片段有什么问题?

Mic*_*hal 4

尝试添加import * as React from 'react'. <h1>是 React 组件(React.createClass('h1')将 JSX 转译为 JavaScript 后),但您只导入了ReactDOM.

  • ...因为一旦 JSX 被转译,`&lt;h1&gt;Hello world!!&lt;/h1&gt;` 就会变成 `React.createElement("h1", /*...*/);`。 (2认同)