diff --git a/CHANGELOG.md b/CHANGELOG.md index 21ce291..d0a10de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### Upcoming... +- [Contexts](https://github.com/ericclemmons/react-resolver/pull/21) - [Error Handling](https://github.com/ericclemmons/react-resolver/issues/2) - [React Native](https://github.com/ericclemmons/react-resolver/issues/18) diff --git a/dist/resolver.js b/dist/resolver.js index fd2f095..9336bf4 100644 --- a/dist/resolver.js +++ b/dist/resolver.js @@ -142,12 +142,12 @@ var Resolver = (function () { var promises = asyncKeys.map(function (prop) { var valueOf = container.props.resolve[prop]; - var value = container.props.hasOwnProperty(prop) ? container.props[prop] : valueOf(container.props); + var value = container.props.hasOwnProperty(prop) ? container.props[prop] : valueOf(container.props.props, container.props.context); - return Promise.resolve(value).then(function (value) { - state.values[prop] = value; + return Promise.resolve(value).then(function (resolved) { + state.values[prop] = resolved; - return value; + return resolved; }); }); @@ -181,14 +181,18 @@ var Resolver = (function () { key: "render", value: function render() { return _React2["default"].createElement(_Container2["default"], _extends({ - component: Component - }, props, this.props)); + component: Component, + context: this.context, + props: this.props + }, props)); } }]); return ComponentContainer; })(_React2["default"].Component); + ComponentContainer.childContextTypes = props.childContextTypes; + ComponentContainer.contextTypes = props.contextTypes; ComponentContainer.displayName = "" + Component.displayName + "Container"; return ComponentContainer; diff --git a/examples/stargazers/components/Stargazers.js b/examples/stargazers/components/Stargazers.js index c1d659b..234fb95 100644 --- a/examples/stargazers/components/Stargazers.js +++ b/examples/stargazers/components/Stargazers.js @@ -1,7 +1,7 @@ import axios from "axios"; import React from "react"; - import { Resolver } from "react-resolver"; +import { Link } from "react-router"; class Stargazers extends React.Component { render() { @@ -42,11 +42,11 @@ class Stargazers extends React.Component { renderUser(user) { return (
+ {user.company}
+
+ {user.location}
+