使用React.CreateElement指定textarea背景颜色

时间:2017-08-29 17:09:11

标签: reactjs

我正在为应用程序编写一个插件(一种小部件的交易)。这是一个基于电子的应用程序,我正在使用React.CreateElement注入小部件,如下所示:

const e = React.createElement;
class myWidget extends React.Component {
    render () {
        return e('p', {}, 'Hello world!');
    }
}

所以我试图像这样注入textarea:

const e = React.createElement;
class myWidget extends React.Component {
    render () {
        return e('textarea', { style: { backgroundColor: 'white' } });
    }
}

这增加了textarea。但是textarea的背景是透明的,而不是白色的,这让它变得非常丑陋 如果我查看该元素,我可以看到该属性已应用(<textarea style="background-color: white;"></ta>),但要具有白色背景,我需要手动编辑(从检查器)以获得!important (所以它会<textarea style="background-color: white !important;"></ta>) 我已经搜索了如何将!importants传递给React,但他们不会让你。我该怎么办?

编辑: 我想我找到了一个解决方案,但它真的很酷。我正在插入一个大小为1px * 1px的div,它会伸展到textarea孩子的大小。我想,它有效,但如果有人有适当的解决方案,我很乐意听到。

e('div', { height: '1px', width: '1px', style: { backgroundColor: 'white' } },
    e('textarea', { style: { minWidth: '100%', maxWidth: '100%' } })
)

0 个答案:

没有答案