material-ui:uncaught Invariant Violation:traverseParentPath

时间:2016-03-25 16:44:35

标签: reactjs material-ui

我在AppBar中有一个搜索TextField,我在某些页面上动态加载。如果组件在我的“MainView”中加载,该组件是需要搜索的列表,则组件可以动态地通过ComponentWillMount告知搜索框显示。该组件还需要隐藏UnMount上的搜索框。但是,每当我卸载搜索框组件时,我都会收到以下错误:

  

未捕获的不变违规:traverseParentPath(...):无法遍历和转移到相同的ID,``。

以下是显示文本搜索的代码:'header'在render方法中定义,它只调用redux状态prop。

    <AppBar
            title={this.props.title}
            onLeftIconButtonTouchTap={this.handleToggle.bind(this)}
            iconElementRight={
                <div>
                {header.showSearch
                ?
                  <TextField onChange={this.updateSearchText.bind(this)}
                  id="header_search"
                  hintText="Search..."/>
                : ''}
                  <IconMenu
                    iconButtonElement={
                       <IconButton><NavigationMoreVert /></IconButton>
                    }
                    targetOrigin={{horizontal: 'right', vertical: 'top'}}
                    anchorOrigin={{horizontal: 'right', vertical: 'bottom'}}
                  >                        
                    <MenuItem primaryText="Sign out" onTouchTap={this.logoutUser.bind(this)} leftIcon={<ActionExitToApp />} />
                  </IconMenu>
              </div>
        }
        />

如果我注释掉TextField,我从未收到错误。另外,如果我没有卸载它,我没有收到错误。

有什么想法吗?

更新:这是0.15.0-alpha.2版本的材料-ui。我可以确认版本14.4中没有发生此错误。

0 个答案:

没有答案