React version: all
Steps To Reproduce
importReactfrom"react";constKEY_OF_A=Symbol.for("a");constKEY_OF_B="b";exportdefaultfunctionApp(){returnReact.createElement(Foo,{[KEY_OF_A]: "A",[KEY_OF_B]: "B"});}functionFoo(props){returnReact.createElement("text",null,props[KEY_OF_A]+"__"+props[KEY_OF_B]);}// -> undefined__BLink to code example: https://codesandbox.io/s/jolly-wright-gzlxf7?file=/src/App.js
The current behavior
https://github.com/facebook/react/blob/3808b01b3a6d116151b5de742866360ed70450c7/packages/react/src/ReactElement.js#L391
// Remaining properties are added to a new props objectfor(propNameinconfig){if(hasOwnProperty.call(config,propName)&&!RESERVED_PROPS.hasOwnProperty(propName)){props[propName]=config[propName];}}The expected behavior
I'm not sure if it was intended to be designed this way, but I currently have a scenario where I need to inject some private variables into user components from the framework layer. However, these symbols are being removed during the process of passing them. So I'm wondering if it's possible to design this part to support the passing of symbol attributes?
React version: all
Steps To Reproduce
Link to code example: https://codesandbox.io/s/jolly-wright-gzlxf7?file=/src/App.js
The current behavior
https://github.com/facebook/react/blob/3808b01b3a6d116151b5de742866360ed70450c7/packages/react/src/ReactElement.js#L391
The expected behavior
I'm not sure if it was intended to be designed this way, but I currently have a scenario where I need to inject some private variables into user components from the framework layer. However, these symbols are being removed during the process of passing them. So I'm wondering if it's possible to design this part to support the passing of symbol attributes?