好吧,基本上我试图使标题中的两个包在我的项目中工作,该项目使用typescript,其路径Map和esbuild进行编译。不幸的是,这种狂妄自大的做法不适用于编译后的代码...要进行转译,我使用rimraf dist && esbuild ./src/index.ts --target=es2016 --bundle --platform=node --outdir=dist
并运行node dist/index.js
。swagger页面根本没有出现。
代码片段:https://gist.github.com/joaocasarin/167ad9a5feeb564c19e2c92e03619dd7src/app.ts
:第1个文件@docs/v1.ts
:第二个文件
正如你在第二个文件中看到的,我正在设置swagger-jsdoc以使用apis: ['**/routes/**/*.ts', '**/routes/**/*.js']
读取ts和js文件,但我知道这是错误的,我只是不知道如何纠正它。@routes/user.ts
:第3个文件
当我使用tsx watch --tsconfig ./tsconfig.build.json ./src/index.ts
运行服务器时,它很好,我可以使用swagger页面或我拥有的端点。当我把它转成JavaScript时,swagger页面不再工作了(也许是因为它找不到jsdoc设置?)
您可以在图片中看到访问/docs时的错误,这些错误位于gist x1c 0d1x的第4个文件中
如何让它工作?
1条答案
按热度按时间uoifb46i1#
我在esbuild中添加
--external:swagger-ui-express
选项时解决了同样的问题。