--- title: Unknown Prop Warning layout: single permalink: warnings/unknown-prop.html --- The unknown-prop warning will fire if you attempt to render a DOM element with a prop that is not recognized by React as a legal DOM attribute/property. You should ensure that your DOM elements do not have spurious props floating around. There are a couple of likely reasons this warning could be appearing: 1. Are you using `{...this.props}` or `cloneElement(element, this.props)`? Your component is transferring its own props directly to a child element (eg. https://facebook.github.io/react/docs/transferring-props.html). When transferring props to a child component, you should ensure that you are not accidentally forwarding props that were intended to be interpreted by the parent component. 2. You are using a non-standard DOM attribute on a native DOM node, perhaps to represent custom data. If you are trying to attach custom data to a standard DOM element, consider using a custom data attribute as described [on MDN](https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_data_attributes). 3. React does not yet recognize the attribute you specified. This will likely be fixed in a future version of React. However, React currently strips all unknown attributes, so specifying them in your React app will not cause them to be rendered. --- To fix this, composite components should "consume" any prop that is intended for the composite component and not intended for the child component. Example: **Bad:** Unexpected `layout` prop is forwarded to the `div` tag. ```js function MyDiv(props) { if (props.layout === 'horizontal') { // BAD! Because you know for sure "layout" is not a prop that