La fonction d'incrémentation dans l'extrait suivant incrémente le quatrième élément, le cinquième élément, puis le dernier élément (20)
Mon objectif est de faire augmenter chaque valeur numérique à partir du quatrième élément, en sautant les lettres.
Voici la ligne avec laquelle j'ai un problème:
const indexAlteredElement = (clicksModulo) => (! clicksModulo % 3) ? 20 : clicksModulo+3;
Comment puis-je modifier ceci pour atteindre mon objectif?
let clicks = 0;
class App extends React.Component {
state = {
data:'M 175 0 L 326.55444566227675 87.50000000000001 L 326.55444566227675 262.5 L 175 350 L 23.445554337723223 262.5 L 23.44555433772325 87.49999999999999 L 175 0'
};
onClick() {
clicks ++;
this.setState({data: this.increment()});
}
/**
* clicks -> Index de l'élément dans le tableau
* 1 ----- ->4,
* 2 ---- -> 5.
* 3 ---- -> 7.
* 4 ----- ->4,
* 5 ---- -> 5.
* 6 ---- -> 7.
*/
increment() {
const data = this.state.data.replace(/\ \ /g, " ").split(" ");
const indexAlteredElement = (clicksModulo) => (! clicksModulo % 3) ? 20 : clicksModulo+3;
return data.map((e, i) => (i === indexAlteredElement(clicks%3)) ? parseInt(e)+5 : e ).join(' ')
}
render() {
return (
{this.state.data}
Cliquez ici
)
}
}
ReactDOM.render(, document.querySelector('.container'));