Я работаю с JS / React, в настоящее время у меня есть массивы, вложенные в массив.Структура выглядит следующим образом:
const ezra = ["Patriots", "Bears", "Vikings", "Titans", "Jets", "Bengals"]
const adam = ["Chiefs", "Cowboys", "Packers", "Ravens", "Broncos", "Cardinals"]
const playerList = [ezra, adam]
У меня также есть состояния React, определенные следующим образом:
this.state{
ezraWins: 0
adamWins: 0
}
Я извлекаю данные из React и использую playerList.forEach для подсчета общих выигрышей.команд под каждого игрока.Я хотел бы найти сумму и .setState, чтобы изменить значение выигрышей $ {player} на общее количество.То есть, когда я насчитал победы команд ezra, я хочу:
this.setState({ezraWins: counter})
Вот глупый пример того, как я думал, что это может работать:
playerList.forEach((player) => {
const playerWins = `${player}Wins`
const playerVariable = `${player}`
// use loop to tally total wins, add that to counter variable
this.setState({${playerWins} : counter})
, но когда яconsole.log те переменные, которые я получаю:
playerList = Патриоты, Медведи, Викинги, Титаны, Джетс, БенгалсВинс
playerVariable = Патриоты, Медведи, Викинги, Титаны, Джетс, Бенгал *
Можно ли как-нибудь получить имя каждого массива в playerList и использовать его для команды .setState в моем коде?Я также попытался немного поэкспериментировать с окном, но получил ошибку, которую не записал, вероятно, потому, что я не сделал playerList и каждый массив в нем глобальным.Это способ сделать это или есть лучший метод?Насколько я понимаю, глобальные переменные - это нет-нет.