如果其他情况无法正常工作

时间:2019-04-02 10:14:02

标签: reactjs

这是我的,如果不是这样,无论className是什么,都以相同的形式呈现我遇到了这个问题,我想解决这个问题

const square = "nodesquare";
var form;
if (square) {
  form = <form>
    <input className="process" type="text" name="process" id="process" />
    <Button type="primary" className="button center" onClick={this.clearAll}>Add</Button>
  </form>
  console.log('Form')
} else {
  form = <p>Nothing to Watch</p>
}

return (
  <div
    key={index}
    className={'node ' + node.className}
    id={node.id}
    ref={nodes => this.refs.nodes[index] = nodes}
    style={node.style}
    onClick={this.activeElem}
    square={square}>
    {form}
    <div className="delete-btn" onClick={event => this.deleteNode(event, node)}>X</div>
  </div>
)
            })}

      </div >
    );

3 个答案:

答案 0 :(得分:0)

我不确定您的问题是什么。 由于您的square常量始终等于"nodesquare",因此您的代码将始终触发if条件,而不会触发else。

答案 1 :(得分:0)

您说:

const square = "nodesquare";
var form;
if (square) { ....

看起来square一直truthy。检查javascript中truthy and falsy的概念。

答案 2 :(得分:0)

我到达这里的主要问题是我在Div装订广场上,这就是为什么我在这里看到此错误的原因

             key={index}
             className={'node ' + node.className}
             id={node.id}
             ref={nodes => this.refs.nodes[index] = nodes}
             style={node.style}
             onClick={this.activeElem}
             square={square}
      >

thats why it was always true thanks for your Precious Time