在开发组件过程中,偶尔需要动态的插入css,比如在在iframe中渲染组件后,iframe中是没有样式的,所以需要手动插入样式。
插入样式
通常是在useLayoutEffect中动态创建style
标签文章来源:https://www.toymoban.com/news/detail-738795.html
useLayoutEffect(() => {
if (!ref.current) {
const style = document.createElement('style');
document.head.append(style);
ref.current = style;
}
ref.current.innerText = css;
return () => {
if (ref.current) {
document.head.removeChild(ref.current);
ref.current = undefined;
}
};
}, [css]);
useStyle
useStyle使用一个动态插入style的hook,将上面的代码进行了封装,方便使用。文章来源地址https://www.toymoban.com/news/detail-738795.html
到了这里,关于react动态插入样式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!