Как определить, кто отправитель, а кто получатель? - PullRequest
0 голосов
/ 18 июня 2020

У меня два пользовательских состояния, одно - это senderState, а другое - ReceiverState. Не можете понять, кто отправитель, а кто получатель. Когда один из них нажимает кнопку, состояние другого пользователя изменяется. Человек, который щелкнет, будет отправителем, а тот, чье состояние изменится, будет получателем.

const [senderState, setSenderState] = useState("...");
const [receiverState, setReceiverState] = useState("...");

//when the user clicks
setSenderState("Sent");
setReceiverState("Received")

1 Ответ

0 голосов
/ 18 июня 2020

Вы можете определить send & receive статус на основе userID

например, предположим, что есть 3 пользователя

  • user1
  • user2
  • user3

При нажатии кнопки вы добавите конкретный userId к sender и оставите все в receiver.

const allUsers = ['user1', 'user2', 'user3'];
const [sender, setSender] = useState(''); // since sender will be one always
const [receiver, setReceiver] = useState([]); // there will be multiple reciever. 

и на кнопке щелкните, вы можете определить состояния отправителя и получателя:

const onClick = userId => {
setSender(userId);
const receivers = [...allUsers].splice(allUsers.indexOf(userId));
setReceiver(receivers);
}
...