いくつかの情報を含む一連のカードをレンダリングするスライドがあります。カードの高さは、最も高いカードの高さに基づいています。react-slick
スライダーに使用しています。最初のレンダリングでは、カードはすべて 1 つの高さに設定されていますが、ブラウザーを更新すると、カードの高さが同じではありません。
私のコードは次のとおりです
Slider.jsx
import Loadable from 'react-loadable';
.....
const Slider = Loadable({
loader: () => import('react-slick'),
loading: () => null,
});
class Slider extends Component{
constructor(){
this.state={ height: 0 }
this.cards = [];
}
componentDidMount(){
const height = this.getHighestHeight(this.cards);
this.setState({height});
}
getHighestHeight(cards){
//calculates the highest height of the cards
......
}
render(){
...
<Slider ...>
<Cards height={this.state.height} />
</Slider>
....
}
}
Loadable は非同期コンポーネントであることを理解しています。それがブラウザの更新時に高さを設定しない理由である可能性があります