0

好吧,最近我开始使用 React.js 库,现在我正在尝试将它与 Firebase 托管一起使用,使用 TypeScript 语言。但是,每次我尝试使用 tsx 编写一些代码时它都不起作用,例如:

import * as React from "react"; //red underline under "react"
import "./App.css";

import logo from "./logo.svg";

class App extends React.Component {
  render() {
    return <h1>Hello</h1>; //red underline under <h1> and </h1>
  }
}

export default App;

这样我就不能在这里写任何jsx代码,因为它总是出现问题:

test.tsx(1,1): error TS7026: JSX element implicitly has type 'any' because no interface 'JSX.IntrinsicElements' exists

有人可以帮我吗?

4

1 回答 1

0

你是如何创建你的反应应用程序的?如果您使用create-react-app,则需要使用react-scripts-ts作为 --scripts-version 标志。这应该将 @types 包与 React 的依赖项一起安装,从而消除您的问题。

此外,它应该让您开始使用 App.tsx 文件,因为您的代码片段中提供的文件不是有效的打字稿反应组件(即您的 render() 方法不是公共的)。

快乐黑客!

于 2018-08-25T03:47:46.707 回答