@mosikus

Как правильно передать значение value из одной панели в другую?

Есть у меня app.js, в котором находятся две панели.
На одной этот код(лишнее убрал):
const messages = [
  {
    values: [ [200,715],[717,749],[764,776],[800,999] ],
    message: 'Выводится текст',
  },
]; 
 
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];

const initialValue = "";

function Home() {
  const [value, setValue] = React.useState(initialValue);

  const addNumber = number => {
    return () => {
      setValue(prevValue => (prevValue + number).slice(0, 3));
    };
  };

  const reset = () => {
    setValue(initialValue);
  };

  return (
    <div>
	
	<div>
                  {messages
                     .filter(n => n.values.some(v => (
                      (v instanceof Array && v[0] <= value && value <= v[1]) ||
                        v === value
                       )))
                     .map(n => <div key>{n.message}</div>)
                  }
        </div>
	
      <div>
        <input value={value} />
      </div>
      <div>
        {numbers.map(number => (
          <button key={number} onClick={addNumber(number)}>
            {number}
          </button>
        ))}
      </div>
      <div>
        <button onClick={reset}>Clear</button>
      </div>
    </div>
  );
}

Его, соответственно, экспортирую в app.js. При нажатии на кнопку цифра выводится в input. В диапазоне [200,715] и тд выводится текст.
На второй панели хочу сделать так, чтобы при определенном значении value выводился определенный блок, но это значение нужно передать туда.
Я так понимаю, мне нужно занести value в стейт в app.js и потом передавать на вторую панель. Как это сделать ?
  • Вопрос задан
  • 207 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега React
Переносите value из Home в родительский компонент, передаёте value и setValue в Home в качестве props. И во второй компонент тоже value передаёте. Ну и всё.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы