首页 > 解决方案 > 如何使 vscode 显示来自另一个 .js 文件的导出函数的类型信息?

问题描述

通过注释在 vscode 中显示 Typescript 文件的类型信息非常简单/// <reference path ...。但是,我在另一个 js 文件中使用导出函数的情况。导出的函数已被注释为包含类型信息。这是一个示例(lib/index.js):

/**
 * Put the executing thread to sleep for the given amount of milliseconds.
 * @param {number} milliseconds
 */
exports.sleep = function (milliseconds) {
    var end = new Date().getTime() + milliseconds;
    while (new Date().getTime() < end) { }
}

在我的 main.js 文件中,我这样做:

var lib = require("lib");
lib.sleep(500);

不幸的是,vscode 不提供该sleep函数的调用签名,我也不能使用 cmd/ctrl+click 导航到它。

我还创建了一个类型文件并在 main.js 中引用了它,它的工作方式几乎与我想要的一样,只是它不会将我带到原始源,而是当我 cmd/ctrl+单击函数时它会转到类型文件姓名。

是否有可能以及如何让 vscode 识别其他 JS 文件中的导出并为其提供调用信息和代码导航?

标签: javascriptvisual-studio-code

解决方案


require将路径更改为./lib

var lib = require("./lib");
lib.sleep(500);

推荐阅读