我正在尝试决定分发其他人可以主题的组件的最佳途径。他们可能需要更改html结构以及css / bootstrap样式。 (我在组件中使用react-bootstrap。
我能看到的唯一方法是创建一个包含src/themes/default
,src/themes/awesome
等所有子组件的组件文件夹,然后将它们导入主组件,然后人们可以调用做这样的事......
这只是一个概念,它可能并非完全有效
import default from './themes/default/index.js`
import awesome from './themes/awesome/index.js`
const themes = {
default,
aweosme,
}
const MyComponent = ({ theme, otherprop }) => {
return (
<themes.default otherprop={otherprop} />
)
}
然后,如果有人想要贡献一个主题,他们将不得不在jsx和内联样式中编写一个完整的html结构的组件来配合它。这需要他们熟悉反应,但除非我错过了一些东西,否则我看不到另外的方法......
您怎么看?