je la liste des objets suivants:Set TimeOut réagisse Fonction
mediaList[
{id:1, url:"www.example.com/image1", adType:"image/jpeg"},
{id:2, url:"www.example.com/image2", adType:"image/jpg"},
{id:3, url:"www.example.com/video1", adType: "video/mp4"}
]
Je dois créer un diaporama qui a une durée configurable (1s, 5, 10s). Jusqu'à présent, je peux générer une liste des médias de la mediaList
renderSlideshow(ad){
let adType =ad.adType;
if(type.includes("image")){
return(
<div className="imagePreview">
<img src={ad.url} />
</div>
);
}else if (adType.includes("video")){
return(
<video className="videoPreview" controls>
<source src={ad.url} type={adType}/>
Your browser does not support the video tag.
</video>
)
}
}
render(){
return(
<div>
{this.props.mediaList.map(this.renderSlideshow.bind(this))}
</div>
)
}
Ce que je veux faire est maintenant générer les médias un à la fois avec des durées configurables pour AutoPlay.
Je sais que je dois utiliser une certaine forme d'une fonction setTimeout comme cet exemple:
setTimeout(function(){
this.setState({submitted:false});
}.bind(this),5000); // wait 5 seconds, then reset to false
Je ne suis pas sûr de savoir comment mettre en œuvre pour ce scénario. (Je crois que j'aurai besoin d'utiliser css pour les transitions de fondu mais je suis juste perplexe sur comment créer la transition en premier lieu)
Cela est logique, juste testé avec quelques petites mises à jour et il fonctionne! Merci – lost9123193
Une très bonne approche! Ça m'a aidé! Merci – Aayushi