reactjs - 使用 express 应用程序(生产)构建时不渲染材质 UI 组件
问题描述
我正在使用 React 和 Material UI 构建一个前端,当我运行 npm start 时一切都运行顺利。
我还有一个 express 应用程序,它为这个前端的生产构建提供服务(我运行 npm run-script build 并获取 prod 构建并将其放置在我的 express 应用程序的目标目标中)。当我在本地运行这个 express 应用程序(使用 node app.js)时,一切都在那里渲染和运行顺利。
现在,当我进入我用来部署的 Amazon Lightsail linux 实例,并使用 node app.js 在那里运行 express 应用程序时,应用程序运行,但所有 material-ui 组件根本不渲染。我看到的只是背景。
初步调查使我相信在 ReactDOM.render 中,我正在渲染的 UI 需要包装在 MuiThemeProvider 中。试过这个无济于事。它使我提出了几个问题。
在我的生产构建(build->static->css)中,我只有一个 css 文件,它只列出了背景。这对于为什么我在部署时至少可以看到背景是有道理的。我的问题是,我在我的 jsx 中大量使用 makeStyles 和 withStyles 来创建我的大部分课程。在我的生产版本中,这些应该被编译成 css 吗?
我的另一个问题是它是否应该被编译成 css,为什么当我在端口 9000 上本地运行 express 应用程序时,我能够看到我所有的材料 ui 组件,但当我将它提供到我的静态端口时只能看到背景在光帆上?这是相同的构建,所以我几乎很难相信我的构建有问题。
有没有人经历过这样的事情?任何有关如何调试的提示或建议将不胜感激,我已经被困了很长时间。
解决方案
推荐阅读
- c++ - 自午夜以来的秒数
- submenu - 回复:创建顶部和侧边菜单
- mysql - 在 MySQL 中使用 mm/dd/yyyy 格式选择数据
- mysql - @@global.timezone 和 @@system_time_zone 之间的 MySQL 区别
- ios - Objective-c 访问 plist 中的值
- python - pyspark中的累积和
- r - R Shiny App 的问题 --> 交互式生存图
- reactjs - React - Material-UI - 如何在 react-hook-form 中使用 Select 和多个值
- javascript - 有没有办法存根这些类型的函数?
- python - Pandas 数据框列名