Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.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 requireJS遇到递归加载错误-来自新调用_Requirejs_Typescript - Fatal编程技术网

typescript requireJS遇到递归加载错误-来自新调用

typescript requireJS遇到递归加载错误-来自新调用,requirejs,typescript,Requirejs,Typescript,这只发生在我们的应用程序中,它是一堆代码,不是我能写出来的,也不是任何人都愿意费劲去完成的。所以我所能做的就是描述错误 我们正在用--amd构建typescript,文件之间有大量递归引用。在我将此调用放入函数之前,一切都正常: var di = new moduleDocIterator.DocIterator(null); 这样,main.ts(.js)文件的初始加载在生成的.js文件的顶部设置uu extens时会出现null或未定义的引用异常 此调用所在的文件和文件ModuledCit

这只发生在我们的应用程序中,它是一堆代码,不是我能写出来的,也不是任何人都愿意费劲去完成的。所以我所能做的就是描述错误

我们正在用--amd构建typescript,文件之间有大量递归引用。在我将此调用放入函数之前,一切都正常:

var di = new moduleDocIterator.DocIterator(null);
这样,main.ts(.js)文件的初始加载在生成的.js文件的顶部设置uu extens时会出现null或未定义的引用异常

此调用所在的文件和文件ModuledCiterator引用中除了几个字符串之外没有任何静态内容。生成的.js为每个类创建对象,但看起来它实际上没有执行任何东西

在发生这种情况时,没有调用任何代码。这只是通过requireJS请求的所有内容的初始加载


如何找出不满意的原因?

我注意到,当typescript编译器生成
define
语句时,它只包含模块中使用过的导入。这听起来像是添加了
var di=new moduledCiterator…
行导致ModuledCiterator导入被认为已使用,这意味着它出现在
define
语句的依赖项数组中,可能这是一个循环引用,也可能下载文件时出现问题(请检查fiddler)?我认为@JeremyDanyow是正确的:TypeScript的编译器将删除/忽略AMD依赖项,这些依赖项是
import x=require('x')
,当x从未被使用时(你必须
//
强制使用一个不直接使用的依赖项)。这似乎确实有可能是在最终添加AMD依赖项时添加了有问题的行。您可以通过查看生成的JS并在更改之前/之后检查编译的
define(['amddep','amddep2'],…)
输出来调试它。