2016-08-22 34 views
4

私はlinter eslint-plugin-reactによって解析されている次のコードを使用しています。私はpropTypes下部の製品を宣言しながら、小道具の検証に小道具がありません

「製品は小道具の検証に欠けている」と私はそれが機能するために渡すこと:それは警告を返します。何か案が ?

import React from 'react' 

const ProductDesc = (props)=>({ 
    render(){ 
    return (
     <div> 
     <h1>{props.product.headline}</h1> 
     <img src={props.product.images[0].imagesUrls.entry[2].url} alt="Thumbnail large pic"/> 
     <p>Yeah</p> 
     </div> 
    ) 
    } 
}) 

ProductDesc.propTypes = { 
    product: React.PropTypes.object 
}; 

export default ProductDesc; 
+3

あなたが有効ではないように定義どのような成分が反応するのでリンターが混同される可能性がありますがされている必要があります。 'class'を作成するか、レンダリングするものを返す関数を使用する必要があります。あなたの関数は、 'render'メソッドを使ってオブジェクトを返します。 –

+0

* product *が存在するかどうかを決して確認しないので、最後に* React.PropTypes.object.isRequired *を* propTypes *に使用する必要があります。 –

+0

allright実際にコンポーネントを台無しにしていたrender()を削除しました – Nicc

答えて

1

構文は

const ProductDesc = (props)=>{ 
    return (
     <div> 
     <h1>{props.product.headline}</h1> 
     <p>Yeah</p> 
     </div> 
    ) 
}