meteor - Material-ui v5.0.6 和 Meteor 的性能问题
问题描述
我想知道是否有其他人遇到同样的问题,是否有任何解决方案......
我使用 Material-UI 和 Meteor JS 创建了一个应用程序。一切都很好,直到我将 Material-UI 更新到 v5,他们完全改变了组件的样式,现在他们正在使用 @emotion。
我现在在首次使用某些组件时遇到了很多明显的性能问题。并且控制台中有很多警告,如“[Violation] 'foobar' handler take xxxxms”。
例如,如果您有一个通过单击按钮弹出的 Material-UI 对话框,那么第一次弹出该对话框可能需要 1-3 秒。随后的弹出窗口是“即时的”。如果您强制重新加载页面,那么在第一次使用时,您会遇到性能问题。
我想知道这是否与我的应用程序的复杂性或一些奇怪的交互有关,所以我刚刚创建了一个全新的 Meteor 项目(默认的 React 项目,有一个增加计数器的按钮),安装了 Material-UI v5.0.6然后将默认应用上的按钮替换为 Material-UI 组件。
我立即收到有关性能问题的控制台警告。在这种情况下,有关 DOMContentLoaded 页面加载时间过长的警告,然后当我单击按钮“mousedown”处理程序时需要 300 毫秒。
打开 Chrome 的 Performance doo-dar,我看到第一次点击大约需要 300 毫秒,并且很多事情都在情绪中发生。随后的一次点击,引擎盖下发生的事情很少,事件大约是 3 毫秒,即快了 100 倍。
对此有什么想法吗?
解决方案
推荐阅读
- swift - 执行异步云函数的问题
- reactjs - 用于构建的 React 应用的 App Engine app.yaml 处理程序
- android - 我们可以在底部 Appbar 中实现折叠工具栏的行为吗?
- regex - 如何使用正则表达式提取器从jmeter中的响应中提取值
- c++11 - 在 C++ 中进行方法链接时如何避免复制
- javascript - 找到SVG路径的方向
- url-routing - 调用 api url 后显示进度消息
- python - 调用使用 PyInstaller (包括 PyQt4)制作的 .exe 时出现运行时错误
- ios - CoreData:performBackgroundTask 和 newBackgroundContext() 有什么区别?
- ruby - Ruby 请求标头,还有一个 ?tag=tag