当///引用在“use strict”之后时,为什么typescript会抱怨?
这个问题和我昨天问的有关。初始设置是相同的 我有一个简单的typescript文件,如下所示:当///引用在“use strict”之后时,为什么typescript会抱怨?,typescript,commonjs,use-strict,typescript1.7,Typescript,Commonjs,Use Strict,Typescript1.7,这个问题和我昨天问的有关。初始设置是相同的 我有一个简单的typescript文件,如下所示: /// <reference path="./typings/js-yaml/js-yaml.d.ts"/> 'use strict'; import * as y from 'js-yaml'; console.log(y); 'use strict'; /// <reference path="./typings/js-yaml/js-yaml.d.ts"/> impor
/// <reference path="./typings/js-yaml/js-yaml.d.ts"/>
'use strict';
import * as y from 'js-yaml';
console.log(y);
'use strict';
/// <reference path="./typings/js-yaml/js-yaml.d.ts"/>
import * as y from 'js-yaml';
console.log(y);
Typescript不高兴:
$ tsc --module commonjs file.ts
file.ts(4,20): error TS2307: Cannot find module 'js-yaml'.
Typescript确实输出了一个编译过的文件,它与最初输出的文件相同,当然,第二种情况下///引用位于“use strict”之后
这里发生了什么事?来自
以下规则适用于引用指令。
引用XML注释必须在任何脚本之前声明
这可能就是原因。
以下规则适用于引用指令。
引用XML注释必须在任何脚本之前声明
这可能就是原因。TypeScript中有一个关于标记的注释:
格式为///的注释,出现在
源文件中的第一个标记添加了对源文件的依赖关系
在路径参数中指定。路径是相对于
包含源文件的目录
TypeScript中有一个关于标记的注释:
格式为///的注释,出现在
源文件中的第一个标记添加了对源文件的依赖关系
在路径参数中指定。路径是相对于
包含源文件的目录
引用指令必须位于文件的顶部。当他们不在顶端时,他们就会被忽略。这会导致模块解析失败,因为否则编译器不知道如何在其他随机文件夹中查找js yaml模块的定义
限制的原因很简单,就是性能:实际上我们尝试过的速度非常慢!尝试分析文件中的每个注释,以查看它是否为引用指令。引用指令必须位于文件顶部。当他们不在顶端时,他们就会被忽略。这会导致模块解析失败,因为否则编译器不知道如何在其他随机文件夹中查找js yaml模块的定义
限制的原因很简单,就是性能:实际上我们尝试过的速度非常慢!尝试解析文件中的每个注释,以查看它是否是引用指令。这可能是其中的一部分。但是,这看起来是针对VisualStudio中的javascript的。这不是关于typescript的参考资料。这可能是它的一部分。但是,这看起来是针对VisualStudio中的javascript的。这不是关于typescript的参考资料。这很有道理。如果在手册中更明确地提到这一点,那就太好了。我甚至没想到去看说明书。如果手册在github上,我可以为它做一个公关。这非常有意义。如果在手册中更明确地提到这一点,那就太好了。我甚至没想到去看说明书。如果手册在github上,我可以为它做公关。