将React渲染中的HTML标记设置为null是不好的做法吗?

时间:2016-06-07 13:30:24

标签: reactjs

我在ReactJS文档中找到了关于如何在HTML元素上有条件地设置ID标记的代码示例。如果条件为false,它将ID标记的值设置为null。这是坏事吗?如果不满足条件,ReactJS中是否有一种方法可以根本不放任何ID标签?

ReactDOM.render(<div id={condition ? 'msg' : null}>Hello World!</div>, mountNode);

2 个答案:

答案 0 :(得分:1)

  

如果有的话,ReactJS中是否有一种方法可以根本不放任何ID标签   条件不符合?

但这就是这段代码的作用:

ReactDOM.render(<div id={condition ? 'msg' : null}>Hello World!</div>, mountNode);

如果条件是假的,则id属性将按预期省略:

<div data-reactid=".0">Hello World!</div>

如果真的:

<div id="msg" data-reactid=".0">Hello World!</div>

答案 1 :(得分:-1)

当然可以,元素道具或属性可以像这样构建

  render() {

    const props = {
      id: 'myId',
      className: 'myClass'
    }

    return (
        <div {...props}>Hello</div>
    )

  }

然后您可以添加一些条件来设置属性

if (withTitle) {
  props.title = 'myTitle'
}