Comments (2)
Hello, @NolanChan,
You can specify the structure of objects by using @typedef
to define schemas, such as this example in the documentation:
/**
* A song type
* @typedef {object} Song
* @property {string} title.required
* @property {string} artist
* @property {number} year
*/
As you can see here, Song
will be an object, and you can use @property
to define the different properties an instance of Song
can have.
If you want to tell the library that your endpoint is going to return an object with this structure, you can just assign it the type Song
after having defined the type with @typedef
, as in the example above.
/**
* GET /api/v1/song/:songId
* @return {Song} 200 - success response - application/json
*/
If you want to define the structure of an object
property inside of an existing schema, the procedure would be the same: you'll have to define a model with the structure your property is supposed to have. The following is an example of a Song
object with an artist
property that will be an object with two fields: name
and age
.
/**
* @typedef {object} Artist
* @property {string} name.required
* @property {number} age
*/
/**
* @typedef {object} Song
* @property {string} title.required
* @property {Artist} artist
* @property {number} year
*/
Hope that helps! 🙂
from express-jsdoc-swagger.
I'm closing this due to inactivity @NolanChan feel free to re-open in case your problem was not solved with the previous comment 👍
from express-jsdoc-swagger.
Related Issues (20)
- How to use with Express Router
- Syntax for specifying JSON object fields and nested objects in one place HOT 3
- Format is missing in response HOT 1
- Security template for Cookie
- Add support for `@augments`/`@extends` tag HOT 2
- Allow specifying global security schema for all routes HOT 3
- Add support for OAS 3 callback documentation
- [BUG] Unable to render this definition HOT 1
- Authorization Header [BUG] HOT 3
- Theme? HOT 1
- import file contained typedef is not recognized HOT 2
- [BUG] Unable to render this definition (production) HOT 1
- Adding Typescript Schema types into the comments HOT 3
- Adding REQUEST Header for Apis HOT 2
- express-jsdoc-swagger sometimes fails generating code HOT 2
- [BUG] Cannot generate example using media type = application/problem+json
- [BUG] enum does not support integer type
- elastic beanstalk fails swagger with timeout
- Upgrade `glob` dependency to >= v10
- Support @ start symbol in property definition
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from express-jsdoc-swagger.