Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/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
Typescript &引用;查找所有参考资料”;除非打开依赖文件,否则不工作_Typescript - Fatal编程技术网

Typescript &引用;查找所有参考资料”;除非打开依赖文件,否则不工作

Typescript &引用;查找所有参考资料”;除非打开依赖文件,否则不工作,typescript,Typescript,我正在使用vs 2012/typescript 0.9。每当我试图从typescript文件中使用“查找所有引用”功能时,除非打开依赖文件,否则不会找到任何引用。例如,以以下场景为例: 1) 在file1.ts中,我有一个名为class1的类 2) 在file2.ts中,我有一个名为class2的类,它使用class1 如果在file1.ts中,我右键单击class1并选择“查找所有引用”,则在file2.ts中找不到引用,除非file2.ts处于打开状态 我想知道这是不是一个bug或者是我这边

我正在使用vs 2012/typescript 0.9。每当我试图从typescript文件中使用“查找所有引用”功能时,除非打开依赖文件,否则不会找到任何引用。例如,以以下场景为例:

1) 在file1.ts中,我有一个名为class1的类 2) 在file2.ts中,我有一个名为class2的类,它使用class1

如果在file1.ts中,我右键单击class1并选择“查找所有引用”,则在file2.ts中找不到引用,除非file2.ts处于打开状态

我想知道这是不是一个bug或者是我这边的什么东西导致了这个问题


谢谢

这是目前设计的。在大多数项目中,您通常会有一个直接或间接引用项目中其他TypeScript文件的“核心”类型文件。我通常会打开我的“核心”文件,以便所有的工具都能找到所有的参考资料和所有其他的工具件

所以有一件事需要注意(上面暗示了这一点),那就是你只需要打开一个文件,间接引用你想要“检查”的文件

如果您有:

A.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
B.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//
C.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//

C.ts中,您可以在A.ts中找到定义,因为B.ts引用了A.ts

N.Taylor Mullen答案的附加信息(因为我还不能评论):

如果当前文件包含对所有其他文件的直接或间接引用,“查找所有引用”不需要打开当前文件之外的任何其他文件。我的文件结构如下所示:

A.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//
B.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//
C.ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//
参考文献。ts

// Stuff
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="References.ts" />
/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />
//
/// 
/// 
/// 
我在本例中添加了jquery.d.ts,以显示真正需要的所有模块或其定义文件都在References.ts中引用

My references.ts包含大约25个引用,但每个其他文件只有一个引用reference.ts文件。

感谢您的回复。。。我不能说我喜欢“当前”的设计,但我明白了。。。我希望事情能像C#中那样顺利。。。非常感谢。