Zatrzymanie programu

0

Dzień dobry,
mam w React JS komponent który sprawdza pewien warunek. Jak przerwać działanie programu w momencie niespełnienia warunku?. Zatrzymanie programu ma zostać zrealizowane w komponencie kontrola.
Oto prrzykład:

const kontrola = (id) =>
{
  if (id > 0 )
  {
  return; 
  }
}

.....

kontrola(34); <- W tym momencie działanie programu powinno zakończyć się, a tak się nie dzieje. 

otworz_sejf();

W skrócie. Jeżeli wartość kontrolna będzie większa od 0 to program powinien zatrzymać się i nie wykonywać już otworz_sejf()

0

a czemu nie możesz zrobić

if (id <= 0) {
  otworz_sejf();
}

?

0
KamilAdam napisał(a):

a czemu nie możesz zrobić

if (id <= 0) {
  otworz_sejf();
}

W środku tej kontroli jest jeszcze odwołanie do bazy danych, które sprawdza czy określone id nie występuje na zleceniu i dlatego chciałem to zrobić w taki sposób :) Oczywiście powyższy kod jest poglądowy :)

0

No to

const kontrola = (id) => {
  if (id > 0 ) {
    return false; 
  } 
  return true;
}
const allowed = kontrola(34); <- W tym momencie działanie programu powinno zakończyć się, a tak się nie dzieje. 
if (allowed) {
  otworz_sejf();
}
2
virusek391 napisał(a):

mam w React JS komponent który sprawdza pewien warunek. Jak przerwać działanie programu w momencie niespełnienia warunku?

Żeby przerwać renderowanie komponentu funkcyjnego możesz zwrócić wartość null lub undefined wewnątrz komponentu.

const kontrola = (id) => {
  return id > 0
}

const App = () => {
  if (kontrola(34)) { // lub po prostu tutaj można zrobić warunek id > 34, bez tej dodatkowej funkcji
    return null;
  }

  otworz_sejf();

  return (
    <p>Hello React.JS</p>
  )
}

. Zatrzymanie programu ma zostać zrealizowane w komponencie kontrola.


const kontrola = (id) => {
  if (id > 0 ) {
    return; 
  }
}

Ten fragment, który wstawiłeś nie jest komponentem Reacta, tylko zwykłą funkcją zwracającą undefined niezależnie od przekazanej wartości.

0
virusek391 napisał(a):

Dzień dobry,
mam w React JS komponent który sprawdza pewien warunek. Jak przerwać działanie programu w momencie niespełnienia warunku?. Zatrzymanie programu ma zostać zrealizowane w komponencie kontrola.

Co to znaczy "zatrzymać program" w kontekście tego, co piszesz? Co chcesz osiągnąć dokładnie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1