Jes*_*Lee 3 javascript reactjs react-jsx
如何以相同的方式有条件地在React组件上设置tabIndex属性,比如设置'disabled'属性?
我需要能够一起设置值和/或删除属性.
首先尝试使整个属性键和值变量:
<div { tabIndex } ></div>
Run Code Online (Sandbox Code Playgroud)
但是编译器抱怨道.
第二个想法是:
const div;
if( condition ){
div = <div tabIndex="1"></div>
}else{
div = <div></div>
}
Run Code Online (Sandbox Code Playgroud)
但是,这是不可取的,因为我的实际组件有很多属性,我最终会有大量的重复代码.
我唯一的另一个想法是使用ref,然后使用jQuery来设置tabindex属性,但我宁愿不必那样做.
有任何想法吗?
Aar*_*all 15
let props = condition ? {tabIndex: 1} : {};
let div = <div {...props} />
Run Code Online (Sandbox Code Playgroud)
我相信有一种更简单的方法(比 Aaron 的建议)。
如果该属性的值为 null 或未定义,React 会从 JSX 元素中删除该属性。我需要得到肯定知道的人的确认。
因此你可以使用这样的东西:
let t1 = condition ? 1 : null;
let div = <div tabIndex={t1}>...</div>;
Run Code Online (Sandbox Code Playgroud)
tabIndex如果t1为空,该属性将被删除。
| 归档时间: |
|
| 查看次数: |
20160 次 |
| 最近记录: |