警告:validateDOMNesting(...):<div>不能作为<p>的后代出现

时间:2018-09-11 09:08:24

标签: css node.js html5 reactjs material-ui

我知道问题出在哪里。但是我找不到解决方案。段落不能包含任何其他标签。但就我而言,我没有使用任何段落标签。

return (
  <div className={classes.root}>
    <Stepper activeStep={activeStep} alternativeLabel>
      {steps.map(label => {
        return (
          <Step key={label}>
            <StepLabel>{label}</StepLabel>
          </Step>
        );
      })}
    </Stepper>
    <div>
      {this.state.activeStep === steps.length ? (
        <div>
          <div>All steps completed</div>
          <Button onClick={this.handleReset}>Reset</Button>
        </div>
      ) : (
        <div>
          <div>{getStepContent(activeStep)}</div>
          <div>
            <Button
              disabled={activeStep === 0}
              onClick={this.handleBack}
              className={classes.backButton}
            >
              Back
            </Button>
            <Button variant="contained" color="primary" onClick={this.handleNext}>
              {activeStep === steps.length - 1 ? 'Finish' : 'Next'}
            </Button>
          </div>
        </div>
      )}
    </div>
  </div>
);

} }

我的getStep方法..看起来就像返回一个段落。但是它应该返回react的一部分。

    function getStepContent(stepIndex) {
  switch (stepIndex) {
    case 0:
      return <FormPart1 setFormPart1Value={getValueFormPart1.bind(this)} className={{
          alignContent:'center'
      }
      } />;
    case 1:
      return <FormPart2 />;
    case 2:
      return <PerformanceTable />;
    case 3:
        return <WorkHabitTable />;
    case 4:
        return <OtherDetails />;
    case 5:
        return <PerformanceOverall />;
    default:
      return 'Uknown stepIndex';
  }

此代码直接从Material-UI获取。因此,有人建议我采取一种解决方法,以消除浏览器中出现的错误。

2 个答案:

答案 0 :(得分:0)

警告消息指出您不能在p标签内使用div标签,例如:

<p>
 <div>some text</div>
</p>

这是无效的html。 p标签可以包含inline elements个非块级元素,例如spanimgstrong等。

因此,您的组件之一正在使用此类。您需要解决此问题。 (只需用div标签替换p标签)


或者,库本身可能已经使用过?您可以自行修复,也可以提交问题来等待修复。

答案 1 :(得分:0)

您始终可以将您的Material-UI按钮包装在<ButtonGroup>中。

对我来说有帮助。

enter image description here