如何使用其他模块的类型

问题描述 投票:0回答:1

VS Code 下的 JSDoc:如何使用其他模块的类型?在下面的例子中,如何声明

foo(ta)

ma.js(CommonJS)

class TA {...}

module.exports = { makeTA: () => new TA, };

mb.js(CommonJS)

const ma = require('./ma');

foo(ma.makeTA());

/** @param {???} ta */ // want to use TA from ma
function foo(ta) {...}
node.js visual-studio-code jsdoc
1个回答
0
投票

您可以使用 import("./ma") 作为类型。但您还必须导出要用作类型的类。

ma.js

class TA { }

module.exports = { makeTA: () => new TA, TA };

mb.js

/** @param {import("./ma").TA} ta */
function foo(ta) {...}

像这样,“ta”将被键入为其他文件中的类的实例。

© www.soinside.com 2019 - 2024. All rights reserved.