这似乎应该有一个明显的答案,但我找不到它。
var mongoose = require('mongoose') /** * @param {Mongoose.Model} fooModel */ function ExecuteAQueryUsingModel(fooModel) {
实际上,我试图将参数定义为Mongoose.Model,一个用mongoose模型构造函数构造的变量。我不知道如何将jsdoc类型设置为外部定义的类型。
Mongoose.Model
yizd12fk1#
我相信你要找的是
var mongoose = require('mongoose') /** * @param {mongoose.Model} fooModel */ function ExecuteAQueryUsingModel(fooModel) {
类型可以从上面已经创建的mongoose变量中获得。当你不需要require( JS变量时,你可以在类型定义中这样做:
mongoose
require(
/** * @param {require('mongoose').Model} fooModel */ function ExecuteAQueryUsingModel(fooModel) {
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希望这能给你一些帮助,尽管它可能不完全正确。
2条答案
按热度按时间yizd12fk1#
我相信你要找的是
类型可以从上面已经创建的
mongoose
变量中获得。当你不需要require(
JS变量时,你可以在类型定义中这样做:bwitn5fc2#
我可能在这里如履薄冰,因为我只是一个业余爱好者,而且我只使用JSDoc在Visual Studio Code中获得IntelliSense。这个JSDoc解决了我的问题:
我在http://usejsdoc.org/tags-param.html中找不到语法,所以这可能是特定于typescript的。这是我发现这个想法的地方:https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html
希望这能给你一些帮助,尽管它可能不完全正确。