diff options
author | Maximilian Hils <git@maximilianhils.com> | 2015-03-22 14:33:42 +0100 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2015-03-22 14:33:42 +0100 |
commit | cf9f91b0b4abe2020c544981d6dc2e2e85f4b4bd (patch) | |
tree | cd0b08150f7c04ef3537bea525dd58eff5c91a28 /web/src/js/components/common.js | |
parent | 6fb661dab518c036e9333d360f2efc91bc2631ab (diff) | |
download | mitmproxy-cf9f91b0b4abe2020c544981d6dc2e2e85f4b4bd.tar.gz mitmproxy-cf9f91b0b4abe2020c544981d6dc2e2e85f4b4bd.tar.bz2 mitmproxy-cf9f91b0b4abe2020c544981d6dc2e2e85f4b4bd.zip |
web: upgrade to react 0.13
Diffstat (limited to 'web/src/js/components/common.js')
-rw-r--r-- | web/src/js/components/common.js | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/web/src/js/components/common.js b/web/src/js/components/common.js index ffaa717f..3ed035ee 100644 --- a/web/src/js/components/common.js +++ b/web/src/js/components/common.js @@ -32,31 +32,43 @@ var StickyHeadMixin = { var Navigation = _.extend({}, ReactRouter.Navigation, { setQuery: function (dict) { - var q = this.context.getCurrentQuery(); + var q = this.context.router.getCurrentQuery(); for(var i in dict){ if(dict.hasOwnProperty(i)){ q[i] = dict[i] || undefined; //falsey values shall be removed. } } q._ = "_"; // workaround for https://github.com/rackt/react-router/pull/957 - this.replaceWith(this.context.getCurrentPath(), this.context.getCurrentParams(), q); + this.replaceWith(this.context.router.getCurrentPath(), this.context.router.getCurrentParams(), q); }, replaceWith: function(routeNameOrPath, params, query) { if(routeNameOrPath === undefined){ - routeNameOrPath = this.context.getCurrentPath(); + routeNameOrPath = this.context.router.getCurrentPath(); } if(params === undefined){ - params = this.context.getCurrentParams(); + params = this.context.router.getCurrentParams(); } if(query === undefined) { - query = this.context.getCurrentQuery(); + query = this.context.router.getCurrentQuery(); } - // FIXME: react-router is just broken. - ReactRouter.Navigation.replaceWith.call(this, routeNameOrPath, params, query); + // FIXME: react-router is just broken, + // we hopefully just need to wait for the next release with https://github.com/rackt/react-router/pull/957. + this.context.router.replaceWith(routeNameOrPath, params, query); + } +}); + +// react-router is fairly good at changing its API regularly. +// We keep the old method for now - if it should turn out that their changes are permanent, +// we may remove this mixin and access react-router directly again. +var State = _.extend({}, ReactRouter.State, { + getQuery: function(){ + return this.context.router.getCurrentQuery(); + }, + getParams: function(){ + return this.context.router.getCurrentParams(); } }); -_.extend(Navigation.contextTypes, ReactRouter.State.contextTypes); var Splitter = React.createClass({ getDefaultProps: function () { @@ -164,7 +176,7 @@ var Splitter = React.createClass({ }); module.exports = { - State: ReactRouter.State, // keep here - react-router is pretty buggy, we may need workarounds in the future. + State: State, Navigation: Navigation, StickyHeadMixin: StickyHeadMixin, AutoScrollMixin: AutoScrollMixin, |