react-router
Version:
A complete routing library for React.js
53 lines (42 loc) • 1.17 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 object = _react2['default'].PropTypes.object;
/**
* A mixin for components that need to know the path, routes, URL
* params and query that are currently active.
*
* Example:
*
* import { State } from 'react-router';
*
* var AboutLink = React.createClass({
* mixins: [ State ],
* render() {
* var className = this.props.className;
*
* if (this.isActive('about'))
* className += ' is-active';
*
* return React.createElement('a', { className: className }, this.props.children);
* }
* });
*/
var State = {
contextTypes: {
router: object.isRequired
}
};
var RouterStateMethods = ['isActive'];
RouterStateMethods.forEach(function (method) {
State[method] = function () {
var router = this.context.router;
return router[method].apply(router, arguments);
};
});
exports['default'] = State;
module.exports = exports['default'];