如何将类名/id 添加到 React-Bootstrap 组件?

Posted

技术标签:

【中文标题】如何将类名/id 添加到 React-Bootstrap 组件?【英文标题】:How to add a classname/id to React-Bootstrap Component? 【发布时间】:2016-11-24 00:12:54 【问题描述】:

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

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

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

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

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

【问题讨论】:

【参考方案1】:

如果您查看组件的code,您会发现它使用传递给它的className 属性与row 类组合以获得结果类集(&lt;Row className="aaa bbb"... 有效)。此外,如果您提供 id 之类的 &lt;Row id="444" ... 属性,它实际上会为元素设置 id 属性。

【讨论】:

出于某种原因,我认为 Row 和 Col 不能这样设计。我认为我在其他组件中遇到过这个问题,如果我将来遇到它会更新【参考方案2】:

第一种方法是使用道具

<Row id = "someRandomID">

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

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

类也可以这样做,在上面的示例中将 id 替换为 className


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

参考:react-html-id


和平。

【讨论】:

以上是关于如何将类名/id 添加到 React-Bootstrap 组件?的主要内容,如果未能解决你的问题,请参考以下文章

如何将类名或样式名添加到使用 SQL 'FOR XML' 生成的 HTML 标记中

如何将类名添加到 v-text-fields 标签标签

将类名添加到 React 根组件或更改结构

vue根据id添加的类名,点完之后关闭弹窗清除类名

您将如何使用与参数的类名相同的名称添加时间偏移

有没有办法在不覆盖现有类名的情况下将类名添加到 blazor 组件?