生产模式下 webpack 捆绑的 Swagger UI Express 插件问题
Posted
技术标签:
【中文标题】生产模式下 webpack 捆绑的 Swagger UI Express 插件问题【英文标题】:Swagger UI Express plugin issue with webpack bundling in production mode 【发布时间】:2020-09-20 00:10:34 【问题描述】:我在我的节点express
REST API 中包含了swagger-ui-express
插件。在生产模式下与webpack
捆绑时,我收到诸如SwaggerUIBundle
未定义之类的错误。没有webpack
,我的应用程序运行良好。有人可以帮我配置webpack
为swagger-ui-express
【问题讨论】:
【参考方案1】:基本上,当涉及到Webpack
时,swagger-ui-express
上还有一个known issue。所以仍然没有官方修复它。对于解决方法,我们将swagger-ui-express
的dist
工件包含到我们的构建工件(由webpack
完成)中,并将其与我们的server.js
(或您的主文件)一起部署。
你需要安装CopyWebpackPlugin
npm install copy-webpack-plugin --save-dev
并将此配置包含到您的webpack.config
node:
__dirname: false
,
plugins: [
new CopyWebpackPlugin(
patterns: [
'./node_modules/swagger-ui-dist/swagger-ui.css',
'./node_modules/swagger-ui-dist/swagger-ui-bundle.js',
'./node_modules/swagger-ui-dist/swagger-ui-standalone-preset.js',
'./node_modules/swagger-ui-dist/favicon-16x16.png',
'./node_modules/swagger-ui-dist/favicon-32x32.png'
]
)
]
【讨论】:
以上是关于生产模式下 webpack 捆绑的 Swagger UI Express 插件问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在使用 webpack 捆绑 React 时禁用严格模式