2017-08-08 19 views
0

次のサンプルコードのconst def = (props) => {行でこのlintエラーを修正しようとしています。React:代入や関数呼び出しが予想され、代わりに式が見つかりました

const propTypes = { 
prop1: PropTypes.string, 
prop2: PropTypes.string, 
prop3: PropTypes.string, 
prop4: PropTypes.string, 
prop5: PropTypes.string, 
} 

const abc = (props) => { 
some code here } 

const def = (props) => { 
<div> 
<div className=" ..some classes..">{abc}</div> 
<div className=" ..some classes..">{t('translation/something')}</div> 

<div ...> 
    <someComponent 
    do something 
    /> 

if (some condition) { 
do this 
} else { 
do that 
} 

</div> 

}; 

私はこの糸くずのエラーを取得していますなぜ任意のアイデア?

+0

その行には何も問題はありません。それはJSの代わりにHTMLを取得した後の行です。 – jmargolisvt

+0

jsxの中に 'if'をつけることはできません。あなたは '条件を使う必要がありますか? trueの場合:false'の構文です。 –

+0

私は 'const def =(props)=> {

};' – User7354632781

答えて

0

あなたのスニペットやコメントから何も返されません。

const def = (props) => { <div></div> };

これは、中括弧と矢印関数の本体をラップしているが、戻り値がない、何も返していません。

const def = (props) => { return (<div></div>); }; OR const def = (props) => <div></div>;

一方、これら二つのソリューション が反応に有効な成分が戻ってきています。 jsx(@Adamで述べたように)内にはif ... else ...を含めることはできませんが、3項演算子のみを使用できます。

+0

ありがとう、私はちょうど同じlintエラーを取得します。私が 'onst def =(props)=> {return(

)を実行すると、' 'def def =(props)=> ); }; 'エラーが発生する'矢印体を囲む予期しないブロック文 ' – User7354632781

+0

' const def = props =>(

); ' – G4bri3l

+0

もう一度ありがとう。それはエラーを表示することはありませんが、私はそれの中のすべてのプロのために 'PropName検証に欠けている' PropNameを取得しています。どんな考え? – User7354632781

関連する問題