@samitouri / QOS-React-2 / commits / 2fafe3eb76

Pass context to DOM wrappers, use it in <option>

Ben Alpert committed May 20, 2015 at 12:30 UTC 2fafe3eb76e7cb9133edf113166eb7144ac81b7a
2 files changed +5 -8
src/renderers/dom/client/wrappers/ReactDOMOption.js
+1 -2
@@ -16,7 +16,6 @@ var ReactChildren = require('ReactChildren');
16 var ReactClass = require('ReactClass');
17 var ReactDOMSelect = require('ReactDOMSelect');
18 var ReactElement = require('ReactElement');
19 -var ReactInstanceMap = require('ReactInstanceMap');
19 var ReactPropTypes = require('ReactPropTypes');
20
21 var assign = require('Object.assign');
@@ -56,7 +55,7 @@ var ReactDOMOption = ReactClass.createClass({
55 }
56
57 // Look up whether this option is 'selected' via parent-based context
59 - var context = ReactInstanceMap.get(this)._context;
58 + var context = this.context;
59 var selectValue = context[valueContextKey];
60
61 // If context key is null (e.g., no specified value or after initial mount)
src/renderers/shared/reconciler/ReactCompositeComponent.js
+4 -6
@@ -326,12 +326,10 @@ var ReactCompositeComponentMixin = {
326 */
327 _maskContext: function(context) {
328 var maskedContext = null;
329 - // This really should be getting the component class for the element,
330 - // but we know that we're not going to need it for built-ins.
331 - if (typeof this._currentElement.type === 'string') {
332 - return emptyObject;
333 - }
334 - var contextTypes = this._currentElement.type.contextTypes;
329 + var Component = ReactNativeComponent.getComponentClassForElement(
330 + this._currentElement
331 + );
332 + var contextTypes = Component.contextTypes;
333 if (!contextTypes) {
334 return emptyObject;
335 }