react-router
Version:
A complete routing library for React.js
38 lines (24 loc) • 1.08 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true
});
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _warning = require('warning');
var _warning2 = _interopRequireDefault(_warning);
var object = _react2['default'].PropTypes.object;
var TransitionHook = {
contextTypes: {
router: object.isRequired
},
componentDidMount: function componentDidMount() {
(0, _warning2['default'])(typeof this.routerWillLeave === 'function', 'Components that mixin TransitionHook should have a routerWillLeave method, check %s', this.constructor.displayName || this.constructor.name);
if (this.routerWillLeave) this.context.router.addTransitionHook(this.routerWillLeave);
},
componentWillUnmount: function componentWillUnmount() {
if (this.routerWillLeave) this.context.router.removeTransitionHook(this.routerWillLeave);
}
};
exports['default'] = TransitionHook;
module.exports = exports['default'];