Why am I getting Error:(45, 1) TS2304: Cannot find name 'angular'. in WebStorm
Why am I getting Error:(45, 1) TS2304: Cannot find name 'angular'. in WebStorm
我刚开始使用 TypeScript 并尝试将其添加到现有的 AngularJS 项目中。
我有 'excluded' 安装了 angular 的 bower 目录,并在首选项 window.
中下载了 angular 的 definitelyTyped 定义
Angular 代码完成工作正常,但无论我在哪里编码 'angular.',打字稿都会给我一个错误 TS2304。
我错过了什么?
可能需要在有问题的特定 .ts 文件中添加对 .d.ts 的引用,例如:
/// <reference path="../typings/angular.d.ts"/>
要修复错误,您需要将下载的 definitelyTyped TypeScript 存根从 ~/Library/Caches/WebStorm9/extLibs
文件夹复制到您的项目目录,并在您的 .ts 文件中使用 /// <reference path>
注释引用它们,例如
/// <reference path="path/to/angular.d.ts" />
澄清一下:
当您通过 Preferences/Languages 和 Frameworks/Javascript/libraries 下载 Typescript 存根时,它们会被放入 ~/Library/Caches/WebStorm9/extLibs
。
这对 Webstorm 来说非常好——它不需要将库文件直接放在项目文件夹中。此外,Webstorm 本身不需要 ///reference
注释来解析类型 - 即使未明确引用类型,类型 hinting/navigation/completion 也能正常工作。但是 tsc 编译器确实需要将 d.ts 文件放置在项目目录中的某个位置并通过 ///reference
注释引用。
因此,要让下载的存根可用于打字稿编译器,您需要将它们 copy/move 到您的项目目录(并可能重命名为更易读的名称 :))并添加注释(可以使用 'Generate reference path comment
'意图(在引用上按 Alt+Enter 以生成评论))。
我们计划在未来的版本
中提供一个选项,将文件直接下载到项目文件夹(而不是 system/extLibs/ )
downloaded the definitelyTyped definitions for angular in the preferences window.
这样下载存根的目的是为 JavaScript 代码而不是 TypeScript 代码提供智能感知。对于 TypeScript 代码,您应该直接在 TypeScript 代码中下载并引用 .d.ts
。
我刚开始使用 TypeScript 并尝试将其添加到现有的 AngularJS 项目中。
我有 'excluded' 安装了 angular 的 bower 目录,并在首选项 window.
中下载了 angular 的 definitelyTyped 定义Angular 代码完成工作正常,但无论我在哪里编码 'angular.',打字稿都会给我一个错误 TS2304。
我错过了什么?
可能需要在有问题的特定 .ts 文件中添加对 .d.ts 的引用,例如:
/// <reference path="../typings/angular.d.ts"/>
要修复错误,您需要将下载的 definitelyTyped TypeScript 存根从 ~/Library/Caches/WebStorm9/extLibs
文件夹复制到您的项目目录,并在您的 .ts 文件中使用 /// <reference path>
注释引用它们,例如
/// <reference path="path/to/angular.d.ts" />
澄清一下:
当您通过 Preferences/Languages 和 Frameworks/Javascript/libraries 下载 Typescript 存根时,它们会被放入 ~/Library/Caches/WebStorm9/extLibs
。
这对 Webstorm 来说非常好——它不需要将库文件直接放在项目文件夹中。此外,Webstorm 本身不需要 ///reference
注释来解析类型 - 即使未明确引用类型,类型 hinting/navigation/completion 也能正常工作。但是 tsc 编译器确实需要将 d.ts 文件放置在项目目录中的某个位置并通过 ///reference
注释引用。
因此,要让下载的存根可用于打字稿编译器,您需要将它们 copy/move 到您的项目目录(并可能重命名为更易读的名称 :))并添加注释(可以使用 'Generate reference path comment
'意图(在引用上按 Alt+Enter 以生成评论))。
我们计划在未来的版本
downloaded the definitelyTyped definitions for angular in the preferences window.
这样下载存根的目的是为 JavaScript 代码而不是 TypeScript 代码提供智能感知。对于 TypeScript 代码,您应该直接在 TypeScript 代码中下载并引用 .d.ts
。