【问题标题】:VSCode Angular & typings: no intellisenseVSCode Angular 和类型:没有智能感知
【发布时间】:2016-05-05 19:49:14
【问题描述】:
我尝试使用 angular 1.5.5 设置一个新项目,并且我想在我的代码中使用打字稿。我使用 Visual Studio Code 作为我的编码工具。
我在我的项目中添加了 angular 的类型:
typings install angular --save --ambient
我添加了一个 typings.d.ts 文件和一个 tsconfig.json 文件,但我没有智能感知我添加的任何 .ts 文件...
不知道我做错了什么?有人能帮我吗?
我尝试设置小项目来重现问题:download link
提前谢谢!
亚历山大。
【问题讨论】:
标签:
angularjs
typescript
intellisense
visual-studio-code
【解决方案1】:
我猜你在执行时一定看到了错误:
typings install angular --save --ambient
首先你必须安装新的TypeScript Definition Manager:
npm install typings --global
那么你必须在你的项目文件夹中使用这个命令:
typings install dt~angular --global --save
如quick start 中所述。
这个命令应该创建一个文件typings.json,看起来应该是这样的:
{
"globalDependencies": {
"angular": "registry:dt/angular#1.5.0+20160517064839"
}
}
如果您想知道 dt 前缀是什么,您可以运行:
typings search --name angular
你会看到dt代表来源:
我认为你必须重新启动 VS Code 才能看到效果并具有智能感知功能。
【解决方案2】:
我自己也遇到了一些问题,以下是我为使其正常工作而采取的步骤。
- 打开终端并运行...
npm install typings -g
cd ~/root of your project
- 我在运行
typings install dt~angular --save --global 时出错
- 我本地安装
typings install dt~angular --save
注意项目根目录中的 typings 文件夹。如果看不到typings 文件夹,请重启VS Code 或cmd+shift+p,然后输入reload 并选择Reload Window。
在根目录中还有一个typings.json 文件,其中包含以下对象。
{
"dependencies": {
"angular": "registry:dt/angular#1.6.0+20170223151516"
}
}
在项目的根目录中创建一个 empty jsconfig.json
创建jsconfig.json 文件后,我再次Reload Window。我打开了app.js 文件并获得了 angularjs 的智能感知。
【解决方案3】:
获得智能感知的一种方法是将///<reference path="../typings.d.ts" /> 添加到您的打字稿文件的顶部。添加定义时,请确保将它们添加到 typings.d.ts 文件中。
【解决方案4】:
你的文件结构错误:
-
tsconfig.json 应该在你应用的根目录下,即AngularApp。
- 通常,
typings.d.ts 也在那里。
移动这两个文件后,记得更改其中的路径。必须包含 Ts 文件。
//tsconfig.json
{
//...
"files":[
"typings.d.ts",
"public/app/app.ts"
]
}
//typings.d.ts
/// <reference path="typings/browser.d.ts" />
If you want to download.