jsdoc上的角度参数类型

tar*_*epp 2 ide jsdoc phpstorm webstorm angularjs

我想知道jsdoc中角度指定内容的"正确"参数类型是什么?

例如.如果我有类似的东西:

/**
 * Some comment
 *
 * @param {WhatHere} $http
 * @param {WhatHere} $timeout
 */
function FooBar($http, $timeout) {
}
Run Code Online (Sandbox Code Playgroud)

那些$ http和$ timeout的正确类型是什么,以便IDE(Web/PhpStorm)可以自动完成这些?

Bla*_*ise 5

Jetbrains产品无法通过分析代码来实现这一点,Angular的依赖注入系统中有太多魔力.但是,您可以通过至少在Webstorm和PyCharm中安装类型库(也可能是PHPStorm和其他Jetbrains产品)来实现:

  • 进入Preferences> Languages & Frameworks> JavaScript>Libraries
  • 单击Download…按钮
  • 选择Typescript community stubs在左上角的下拉菜单(不用担心,它也适用于JavaScript的)
  • 找到angular.js并单击Download and Install按钮
  • 单击Manage Scopes…按钮,通过单击第二列并选择将angular.js添加到项目中angular.js-DefinitelyTyped.

现在您可以像这样注释您的代码:

/**
 * @param {$http} $http
 * @param {$timeout} $timeout
 */
function FooBar($http, $timeout) {
}
Run Code Online (Sandbox Code Playgroud)

$ HTTP $超时

请注意,此技巧适用于所有具有TypeScript社区存根的流行库!