在标签之间切换会导致库错误

时间:2016-05-19 10:41:31

标签: reactjs react-router

你好我正在研究反应应用,其中我有两个可能是库错误。 在标签之间切换。

ReactReconciler.js:51 Uncaught TypeError: Cannot read property '_currentElement' of null

ReactCompositeComponent.js:242 Uncaught TypeError: Cannot read property 'componentWillUnmount' of null

我花了好几个小时。谢谢你的帮助

这是在tabs之间切换的代码。这些代码工作得很好但是当我将它克隆到不同的机器时它的抛出错误如上所述。

'use strict';

var React = require('react');
var ReactDOM = require('react-dom');
var ReactRouter = require('react-router');
var ReactBootstrap = require('react-bootstrap');

var Link = ReactRouter.Link;
var Route = ReactRouter.Route;

var Button = ReactBootstrap.Button;
var ButtonToolbar = ReactBootstrap.ButtonToolbar;
var Nav = ReactBootstrap.Nav;
var Navbar = ReactBootstrap.Navbar;
var NavItem = ReactBootstrap.NavItem;
var Tabs = ReactBootstrap.Tabs;
var Tab = ReactBootstrap.Tab;


var Subtab = React.createClass({

  componentDidMount: function () {
    var path = window.location.href;
    path = path.replace(/\/$/, "");
    path = decodeURIComponent(path);

if(path.indexOf('transaction') > 0) {
  $('#transaction').addClass('active');
  $('#portfolio').removeClass('active');
  $('#tax').removeClass('active');

}else if(path.indexOf('tax') > 0) {
  $('#tax').addClass('active');
  $('#transaction').removeClass('active');
  $('#portfolio').removeClass('active');

}else{
  $('#transaction').removeClass('active');
  $('#portfolio').addClass('active');
  $('#tax').removeClass('active');
}
},

  render: function() {
    return (
     <div>
     <br/>
        <Nav bsStyle="tabs" style={{ 'position': 'relative','top': '2px'}}>
          <NavItem id="portfolio" href={'#/portfolio/' + this.props.portfolioId}><b>Portfolio Details</b></NavItem>
          <NavItem id="transaction"  href={'#/portfolio/' +  this.props.portfolioId + '/transaction'}><b>Transaction</b></NavItem>
          <NavItem id="tax" href={'#/portfolio/' + this.props.portfolioId      + '/tax'}><b>Taxation</b></NavItem>
        </Nav>
     </div>
    );
  }
});

module.exports = Subtab;

0 个答案:

没有答案