确保我们的Node服务器中的模块中的这个是在整个应用程序中使用@typedef
的正确方法,而不是在需要的每个模块/文件中重复它。从文档中我无法确定这是否正确,并且是否有人对存储全局@typedefs的位置有意见,因此如果在整个应用程序中使用它们需要更改,则很容易找到它们。
/**
* Universally unique identifier.
* @global
* @typedef {string} UUID
*/
答案 0 :(得分:2)
这里的答案有点晚,但是我遇到了Google的这个问题,所以这就是我自己解决这个问题的方式。希望它对未来的人们有所帮助!
我遇到了类似的情况,我在模块中有一个typedef
,想在应用程序的其他地方使用该类型,而无需重新定义类型。
我喜欢这样的东西:
myModule.js
/**
* Universally unique identifier.
* @typedef {string} UUID
*/
myOtherScript.js
/**
* @function
* @param {import('path/to/myModule.js').UUID} uuid
*/
function getByUUID(uuid) { ... }
这并不能使typedef
严格地成为全球性的,所以您不能做@param {UUID} uuid
(这会更干净,但是我还没有找到一种方法来实现这样),但是这种方法适用于我的用例,并且绝对比在任何使用该类型的地方重写类型都要好。
有关该主题的更多信息,请参见this Github issue。