我使用 WebStorm,并编写一个 nodeJS 应用程序。
启用节点 js 支持("节点.js核心库已启用"选项)
导入并启用 DefinitelyTyped: node-DefinitelyTyped
(.WebStorm2016.2/config/javascript/extLibs/http_github.com_borisyankov_DefinitelyTyped_raw_master_node_node.d.ts)
例如,我想要http.ServerResponse
的智能在.d.ts文件中,我有这样的东西:
declare module "http" {
//...
export interface ServerResponse extends events.EventEmitter, stream.Writable {
//...
writeHead(statusCode: number, headers?: any): void;
//...
}
}
现在我想在我的 JS 代码中获取方法自动编译:
/**
* @param {http.ServerResponse} response such jsdoc does not work, what type is it?
*/
function handleResponse(response){
response.writeHead(200); //here i want the autocompletion
}
问题:如何记录js/使用.d.ts来获得正确的代码完成?
你忘记了参数(响应)。
/**
* @param {http.ServerResponse} response Now it should work
*/
...
尝试
/**
* @param {module:http.ServerResponse}
*/