-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🐛[BUG] 用 createGlobalStyle 创建的样式存在卸载问题 #148
Comments
有没有其他方法?我其实一直想替换掉这个createGlobalStyle了,emotion react 做的实在有问题 |
目前没有 |
你建议怎么做?直接把代码拷过来自己搞一个? |
1.向 emotion 反馈
我目前就这么用了 |
确实,严重的性能问题 |
@andyyxw 能否量化下这块影响有多大? |
我正常用的,不是 |
因为打补丁的方案会因@emotion/use-insertion-effect-with-fallbacks版本更新而需要重新生成补丁才能生效,所以在这里补充一下另外的解决方案
|
🐛 bug 描述
当使用 createGlobalStyle 创建全局样式后,卸载时样式时内部没有保证会触发清除函数,导致样式一直被缓存。
通过排查,可以确定这是 emotion 内的 @emotion/use-insertion-effect-with-fallbacks 库使用了 React 18 的 useInsertionEffect 的原因(改成 useLayoutEffect 后打上补丁后正常运行)
styled-component 也出现过类似的问题 styled-components/styled-components#4101 (comment)
📷 复现步骤
🏞 期望结果
emotion 短时间应该不会修复,建议打个补丁或 createGlobalStyle 更换 styled-component 的 createGlobalStyle
© 版本信息
The text was updated successfully, but these errors were encountered: