如何向 React-Bootstrap 组件添加类名/ID?

IT技术 reactjs jsx react-bootstrap
2021-05-01 16:38:27

假设我们使用 React-Bootstrap 中的 Row ......我们如何在不使用包装器或内部元素的情况下对其进行样式设置:

<Row>
  <div className='some-style'>
   ...
</Row>

理想情况下,我们可以这样做:

<Row className='some-style'> 
  ...
</Row>

但这不起作用,我认为这是因为React-Bootstrap不知道组件className内的位置<Row>(它应该只设置<div>具有行样式的样式)。

2个回答

如果您查看组件代码,您可以看到它使用className传递给它prop 与row组合以获得类的结果集(<Row className="aaa bbb"...有效)。此外,如果您提供id类似<Row id="444" ...它实际上会设置 idprop元素的属性。

第一种方法是使用props

<Row id = "someRandomID">

其中,在定义中,你可以去

const Row = props  => {
 <div id = {props.id}> something </div>
}

对 class 也可以这样做,在上面的例子中用className替换id


您不妨使用react-html-id,那是一个 npm 包。这是一个 npm 包,它允许您为组件使用唯一的 html ID,而不依赖于其他库。

参考:react-html-id


和平。