次のコードをもっときれいにしようとしています。具体的には、別の関数を使用してマップ関数に値を渡したいと思います。ここで 別の関数を使用してオブジェクトをマップ関数に渡します。
コードです:だから基本的に私はそこに別の方法を必要とする...
this.props.slides.map((s)=>{
let id = s.get('id')
let title = s.get('title')
let image = s.get('image')
let alt = s.get('alt')
let caption = s.get('caption')
return(
<Carousel.Item key={id} >
<img width={900} height={500} alt={s.get('alt')} src={image} alt={alt}/>
<Carousel.Caption>
<h3>{title}</h3>
<p>{caption}</p>
</Carousel.Caption>
</Carousel.Item>
)
})
}
</Carousel>)
}
}
...
のような(それはクラスのすべての部分です):
listSlides(){
...
}
、その後、私はちょうど私のマップにそれを渡すことができます関数。しかし、私はそれを書く方法が不明です。私はmap()の動作についてちょっと混乱しています。
最初のパラメータは配列の各アイテムに渡されている関数だと書かれていますが、なぜ私は今できることを意味しているのか分かりません:let id = s.something in my
closured function?
あなたが思うより簡単かもしれません。 'map()'でコードをカットして貼り付け、関数名を 'map(listSlides)'に入れてみてください。問題が発生した場合は、試したコードを投稿してください。 – bloodyKnuckles
'listSlides'は本当にあなたのクラスのメソッドになるべきではありません。特別なことはしません。それは関数宣言(メソッド内またはクラス外)でなければなりません。静的メソッドかもしれませんが、もしあれば 's'の方が良いでしょう。 – Bergi