我正在为AngularJs应用尝试VS Code。第一个文件,已经有些东西不起作用,我认为应该是这样。
var myModule = angular.module("MyModule", ['ngRoute']);
好的,到目前为止一切顺利。它让我弄清楚'有角'是什么,我很高兴地点击了在文件顶部放置<reference/>
行的选项。
好的,现在配置怎么样......
myModule.config(function($routeProvider) {
$routeProvider.
});
好的,我不应该在这一点上得到“.when”的建议吗?我不。我得到“没有建议。”代替。
我做错了什么?
我甚至手动在顶部添加了另一个<reference/>
标记,将其指向angular-route.d.ts文件。没有帮助。
谢谢!
答案 0 :(得分:0)
不同之处在于,在您的情况下,angular
是一个全局可用的变量(在加载脚本时将添加到window
对象中)并且$routeProvider
只是一个常规变量参数名称。
对于所有以某种方式导入的全局对象&#34; (或声明为可用),VS Code通过使用TypeScript定义文件计算出这可能来自何处。 VS Code无法确定某些参数名称来自角度路由器。这只是一个角度特定的行为,传递给config
方法的函数将获得一些角度依赖注入。您当然可以编写一些使用此参数名称的其他方法。
function calcSquare($routeProvider) {
return $routeProvider * $routeProvider;
}
只要有一个这样的参数,猜测类型是不正确的。
使用TypeScript时,您可以声明这些类型的参数,以便从IDE获得支持:
myModule.config(function($routeProvider: angular.route.IRouteProvider) {
// $routeProvider. // auto-completion available here
});