Eu sei em vanilla js, podemos fazer
onclick="f1();f2()"
Qual seria o equivalente para fazer duas chamadas de função onClick no ReactJS?
Eu sei que chamar uma função é assim:
onClick={f1}
javascript
reactjs
user2554585
fonte
fonte
ele.onclick = ...
ouaddEventListener
.Respostas:
Envolva suas duas + chamadas de função em outra função / método. Aqui estão algumas variantes dessa ideia:
1) Método separado
ou com classes ES6:
2) Inline
ou ES6 equivalente:
fonte
onclick={function() { f1(); f2(); }}
onclick={()=>{ f1(); f2() }}
onClick={ () => f1(); f2() }
Promises
provavelmente é a resposta que você estava procurando.Talvez você possa usar a função de seta (ES6 +) ou a declaração de função simples e antiga.
Tipo de declaração de função normal ( não ES6 + ):
Função anônima ou tipo de função de seta ( ES6 + )
O segundo é o caminho mais curto que conheço. Espero que ajude você!
fonte
Chamando várias funções em onClick para qualquer elemento, você pode criar uma função de invólucro, algo assim.
Essas funções podem ser definidas como um método na classe pai e, em seguida, chamadas a partir da função de invólucro.
Você pode ter o elemento principal que causará o onChange como este,
fonte
isso
onclick={()=>{ f1(); f2() }}
me ajudou muito se eu quisesse duas funções diferentes ao mesmo tempo. Mas agora eu quero criar um gravador de áudio com apenas um botão. Portanto, se eu clicar primeiro, quero executar o StartFunctionf1()
e se clicar novamente, quero executar o StopFunctionf2()
.Como vocês percebem isso?
fonte
const play = () => { console.log("played"); } const pause = () => { console.log("paused"); } function* audioSwitcher() { let paused = true; while (true) { if(paused) { play(); } else { pause(); } yield paused = !paused; } }
Você pode usar aninhado.
Existem duas funções, uma é
openTab()
e outra écloseMobileMenue()
. Em primeiro lugar, chamamosopenTab()
e chamamos outra função internacloseMobileMenue()
.fonte