如何在非打字稿项目中使用通用打字稿方法?

时间:2020-03-08 18:53:53

标签: reactjs typescript create-react-app

我正在基于create-react-app使用React构建的项目。我将使用以打字稿编写的库。如何在项目中使用此库中定义的通用方法?当前,我在Visual Studio Code中遇到错误,说“'类型参数'只能在.ts文件中使用”。解决此问题的最佳方法是什么?

我是使用React和Typescript的新手,请原谅我这是一个愚蠢的问题。非常感谢。

2 个答案:

答案 0 :(得分:0)

如果您尝试在JS项目中使用TS,最好的启动方法是在每个文件的顶部添加// @ts-check注释。 VSC将使用TypeScript编译器“检查”您的文件,例如

// @ts-check
[] + {} // ERROR

当然[] + {}仍然是语法有效的JS代码,但TS编译器会在此处抛出错误。

用TS编写的库应由// @ts-check自动键入。

第二个词根由TypeScript编译器编译孔JS项目:

npm i typescript --save-dev
npx tsc src/main.js --allowJs --out /dev/null

--allowJs允许编译器在.js文件上工作。输出为/dev/null,因为我们不想有任何编译文件,我们只想知道编译器是否抛出错误。

答案 1 :(得分:0)

1。使用打字稿创建反应应用

您可以在启用打字稿的情况下创建react项目

npx create-react-app my-app --typescript

并在tsconfig.json

中添加allowJs
{
  ...
  "compilerOptions": {
    ...
    "allowJs": true,
    ...
  },
  ...
}

通过这种方式,您可以混合使用*.js*.ts类型的文件来按需使用打字稿。

2。启用在JS中键入

通过在文件顶部添加// @ts-check,您可以在*.js个文件上启用打字稿掉毛