Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Import 如何从环境模块(B.d.ts)引用普通类型脚本模块(A.ts)?_Import_Enums_Reference_Typescript_Ambient - Fatal编程技术网

Import 如何从环境模块(B.d.ts)引用普通类型脚本模块(A.ts)?

Import 如何从环境模块(B.d.ts)引用普通类型脚本模块(A.ts)?,import,enums,reference,typescript,ambient,Import,Enums,Reference,Typescript,Ambient,最初,我在环境模块中声明了所有内容。 后来,我不得不将枚举提取到非环境模块,因为我需要使用declare和const查找枚举成员,这是不可能的。 现在,我的示例文件如下所示 //enums.ts export enum Enum1{ Value1, Value2 } //ambient.d.ts import * as enums from "./enums"; declare interface TypeA { enumField: enums.Enum1; strField

最初,我在环境模块中声明了所有内容。 后来,我不得不将枚举提取到非环境模块,因为我需要使用declare和const查找枚举成员,这是不可能的。 现在,我的示例文件如下所示

//enums.ts
export enum Enum1{
    Value1, Value2
}

//ambient.d.ts
import * as enums from "./enums";
declare interface TypeA
{
  enumField: enums.Enum1;
  strField: string;
}

//consumer.ts
/// <reference path="ambient.d.ts"/>
class Consumer{
 memberField: TypeA; // <= Here compiler cannot find TypeA
}
//enums.ts
导出枚举枚举1{
价值1,价值2
}
//环境温度
将*作为枚举从“/enums”导入;
声明接口类型A
{
enumField:enums.Enum1;
strField:字符串;
}
//消费者
/// 
阶级消费者{

memberField:TypeA;//一旦添加行:

import * as enums from "./enums";
您将其转换为外部模块,因此要访问其内容,需要将其导入,如下所示:

import * as amb from './ambient'
class Consumer
{
    memberField: amb.TypeA; 
}

请注意,不要使用名称空间或尝试将其与模块(,)混合使用。

一旦添加行:

import * as enums from "./enums";
您将其转换为外部模块,因此要访问其内容,需要将其导入,如下所示:

import * as amb from './ambient'
class Consumer
{
    memberField: amb.TypeA; 
}

请注意,不要使用名称空间或尝试将它们与模块(,)混合使用。

您可以添加以下
import{TypeA}自“/ambient”;


您可以从“/ambient”


也许我错了,但你不必在界面中添加导出?我删除此消息祝你好运可能我错了,但你不必在界面中添加导出?我删除此消息祝你好运