与 TypeScript react - 如何导入方法

IT技术 reactjs typescript
2021-05-04 04:43:34

在 React with TypeScript 中,我收集你使用import * as React from 'react';.

例如,如果我想使用useStateand Fragment,我知道我可以只使用React.useStateand React.Fragment但是,有什么方法可以解构导入中的那些?我知道没有 TypeScript 你会做...

import react, { useState, Fragment } from 'react';

您是否必须进行两次导入,例如....

import * as React from 'react';
import { useState, Fragment } from 'react';

或者会导入两次?也显得有些笨拙。

2个回答

从 TypeScript 2.7 开始,您可以esModuleInterop在 .tsconfig 文件中打开,以使导入像在普通 JavaScript 中一样工作。出于向后兼容性的原因,默认情况下禁用此功能,但发行说明说:

我们强烈建议将其应用于新项目和现有项目。

将这些选项添加到您的tsconfig.json

{
    "compilerOptions": {
        "allowSyntheticDefaultImports": true,
        "esModuleInterop": true,
        ...
    },
    ...
}

然后你可以这样做:

import React, { Fragment } from 'react';