問題タブ [nestjs-swagger]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - dto の型が swagger に表示されないのはなぜですか?
このドキュメントに従って、小さなNest.jsアプリでswaggerドキュメントを設定しています: https://docs.nestjs.com/recipes/swagger
swagger でスキーマを正しく表示するように dto をセットアップするにはどうすればよいですか? より具体的には、ネストされた型です。最上位のキーのみが表示されます。キーの 1 つが何かのタイプである場合、それは空のオブジェクトとして表示されます。これが私が意味することです:
宛先:
闊歩:
swagger の例の値で期待される結果:
これは機能です:
私が試したこと:
- dto で正確なパラメーターのタイプを置き換えたところ、swagger で適切に表示されます。
- インターフェイスに対して dto のクロスチェックを行ったところ、「isOnline」に間違ったフィールドを追加したところ、それを見つけて、それが良くないというマークが付けられました。
- スキーマは闊歩で表示されますが、型付けされた部分ではなく、最上位のみも表示されます。したがって、単なる例の値ではありません。
- スタック オーバーフローを確認しました。関連するスレッドが 2 つ見つかりましたが、どちらも解決しませんでした。タイプの代わりに sub-dtos を手動で作成することを提案した人もいました。うーん...私はそれをしないほうがいいです。
私は何か間違ったことをしている、またはドキュメントで何かを見逃しています。または、swagger モジュールのパーサーが、json の生成時にタイプ/インターフェースを抽出できない可能性があります。