mongoose JsDoc:将param type定义为外部模块的类型

3qpi33ja  于 2023-04-30  发布在  Go
关注(0)|答案(2)|浏览(106)

这似乎应该有一个明显的答案,但我找不到它。

var mongoose = require('mongoose')
/**
* @param {Mongoose.Model} fooModel
*/
function ExecuteAQueryUsingModel(fooModel) {

实际上,我试图将参数定义为Mongoose.Model,一个用mongoose模型构造函数构造的变量。我不知道如何将jsdoc类型设置为外部定义的类型。

yizd12fk

yizd12fk1#

我相信你要找的是

var mongoose = require('mongoose')
/**
* @param {mongoose.Model} fooModel
*/
function ExecuteAQueryUsingModel(fooModel) {

类型可以从上面已经创建的mongoose变量中获得。当你不需要require( JS变量时,你可以在类型定义中这样做:

/**
* @param {require('mongoose').Model} fooModel
*/
function ExecuteAQueryUsingModel(fooModel) {
bwitn5fc

bwitn5fc2#

我可能在这里如履薄冰,因为我只是一个业余爱好者,而且我只使用JSDoc在Visual Studio Code中获得IntelliSense。这个JSDoc解决了我的问题:

/** @param {import("express").Response} expressResponse */
function send(expressResponse) {
    expressResponse.send('OK');
}

我在http://usejsdoc.org/tags-param.html中找不到语法,所以这可能是特定于typescript的。这是我发现这个想法的地方:https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html
希望这能给你一些帮助,尽管它可能不完全正确。

相关问题