gpt4 book ai didi

typescript - 找不到名称 'IProp' 。具有 TS 3.3.3 命名空间的 VS Code 中的 ts(2304)

转载 作者:行者123 更新时间:2023-12-04 17:06:20 25 4
gpt4 key购买 nike

我正在尝试在 d.ts 文件中创建一个命名空间接口(interface),以便在使用相同命名空间的不同文件中使用,但我的 IDE 使用以下消息标记新文件中的接口(interface):Cannot find name 'IProps'. ts(2304) .

我在全局安装了 Typescript 3.3.333333。我的 VScode IDE 状态栏显示 Typescript 3.3.3。

/*
t.d.ts
*/
import {Map} from 'immutable';
declare namespace Configs {
export type Power = {
horse: number,
torque?: number
}
export interface IProps {
displacement: number,
options?: Map<string, any>,
power: Power
}
}

/*
index.ts
*/
/// <reference path="./t.d.ts" />
import {Map} from 'immutable';
declare namespace Configs {
export let props: IProps = { // Error - IDE here flags IProps
displacement: 3.2,
options: Map(),
power: {
horse: 560
}
}
}

最佳答案

在 typescript 文档中的“模块和命名空间”页面上发生后,事实证明这种用法不需要​​“声明”关键字。我从文件中删除了它,命名空间属性变得可用。 es6 导出/导入和三重斜线引用都不需要正确发出和使用这些属性。我还将 —isolateModules 标志重置为其默认值,以允许正确编译跨文件命名空间。

关于typescript - 找不到名称 'IProp' 。具有 TS 3.3.3 命名空间的 VS Code 中的 ts(2304),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55311837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com