我已经使用create react app typescript创建了一个项目。我有几个d.ts文件,其中定义了接口类型和枚举。当我运行启动脚本。它无法加载d.ts文件。
以下是我的tsconfig文件。
{
"compilerOptions": {
"target": "es6",
"lib": [
"dom",
"dom.iterable",
"es2017"
],
"allowJs": true,
"skipLibCheck": false,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": false,
"forceConsistentCasingInFileNames": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "preserve",
"pretty": true,
"preserveConstEnums": true,
"typeRoots": [
"./node_modules/@types",
"src/*"
]
},
"include": [
"src/*"
]
}
typeRoot指向src / *,其中我有d.ts文件,但没有d.ts加载。我收到以下错误:
类型错误:找不到名称“ IAlarmsDetails”。 TS2304
interface IAlarmProps {
alarm: IAlarmsDetails;
}
这是Alarm.d.ts之一中IAlarmsDetails的声明
declare type IAlarmsList = IAlarmsDetails[];
请让我在这里念念什么。我不想使用弹出选项并编写自己的构建配置。
答案 0 :(得分:0)
似乎将.d.ts
文件与create-react-app(版本3.0.1)一起使用的唯一方法是将其命名为global.d.ts
,并将其放入{{ 1}}目录:
src
我不确定为什么没有在任何地方记录此规则,但这是我能够使它生效的唯一方法。