【发布时间】:2017-06-18 18:44:35
【问题描述】:
我刚刚在 NuGet 中运行了更新来更新我的包。之后,我无法再编译并收到上述错误。
jquery 定义文件在我的项目中。但是由于某种原因,引导定义文件再也找不到了。
自从我从事这个项目以来已经有一段时间了。我很确定在更新之前我的定义文件位于完全不同的目录中。但是大部分代码和文件结构都是由 Visual Studio NuGet 包自动创建的。
这些链接或参考位于何处以便可以正确找到定义文件?我对 TypeScript 很陌生,所以如果您能详细解释或提供进一步阅读的链接,将不胜感激
编辑:
我发现这些被称为Triple-Slash Directives。但是这些页面并没有告诉我足够的信息来理解这个错误。
它告诉我 <reference types="..."/> 应该用于 @types 包,我相信 .d.ts 文件就是这样。我尝试将jquery.d.ts 的名称更改为index.d.ts。我已经尝试包括整个路径,例如../jquery/jquery.d.ts。这些都不起作用。
最后,我在angular.d.ts找到了下面这行:
/// <reference path="../jquery/jquery.d.ts" />
我将它复制到引导程序 index.d.ts 中,这似乎修复了错误。
但这对我来说没有意义。首先,我试图链接到定义文件,而不是 TypeScript 文件。所以根据上面的文章,我应该使用reference types,而不是reference path。但是reference types 不起作用。我在这里错过了什么?
文章还说:
仅当您手动创作 d.ts 文件时才使用这些指令。
这些文件不是我写的。它们来自 NuGet,看起来是自动生成的。那么为什么我需要改变这个呢?
【问题讨论】:
-
在使用 .net mvc 和 typescript 启动新项目后,我遇到了同样的问题。现在我将引导 DTS 恢复到 0.9.0 版。在这个版本中,引导类型定义看起来像 jquery 类型定义 (joxi.ru/MAjMJbEU4o36K2)
-
我正在试验一个 tsconfig.json 文件并设置 typeRoot 但没有运气。 typescriptlang.org/docs/handbook/tsconfig-json.html
标签: jquery twitter-bootstrap visual-studio typescript nuget-package