如何创建一个添加全局css文件的主题提供者



如何在React中添加全局css文件作为自定义的ThemeProvider组件?我正在为NPM构建一个组件库。因此,它将使另一个React应用程序能够全局使用css文件。

我试过创建这样一个:

import React from 'react';
import './global.css';
interface Types {
children: React.ReactNode
}
export default (props:Types) => <div>{props.children}</div>

我找到了一个巧妙的解决方案。它使用css文件的内容创建一个<style />标记:

import React from 'react';
import styles from './global.css'
interface Types {
children: React.ReactNode
}
export default (props:Types) => (
<>
<style dangerouslySetInnerHTML={{__html: styles.replace(' ', '')}} />
<div>{props.children}</div>
</>
)

最新更新