Что касается моего предыдущего вопроса (код все еще доставляет мне проблемы): Реагирует: назначение Javascript не обновляет объект
Код здесь https://codesandbox.io/s/github/nieroda/js_err
Вы можетепосмотрите на объект, который у меня есть, в строке 2. Между 2 и 5 нет никакой мутации, хотя вывод на печать отличается (как показано ниже), что наводит меня на мысль, что код выполняется не по порядку.
codeBreaker.js: 108
1. console.log("BEFORE")
2. console.log(gameBoardCopy[currentRow])
3. console.log("END")
let copy = this.state.gameBoard[currentRow].slice()
4. console.log("Copy Start")
5. console.log(copy)
6. console.log("Before Assignment")
copy[4] = { numColorMatch: 2, numExactMatch: 2 }
7. console.log("After Assignment")
8. console.log(copy)
9. console.log("copy end")
Глядя на вывод
- ДО
2.
0: "BlueViolet"
1: "BlueViolet"
2: "BlueViolet"
3: "BlueViolet"
4: {numColorMatch: 0, numExactMatch: 0}
END Начало копирования
5.
0: "BlueViolet"
1: "BlueViolet"
2: "BlueViolet"
3: "BlueViolet"
4: {numColorMatch: 2, numExactMatch: 2}
Перед назначением После Назначения
0: "BlueViolet"
1: "BlueViolet"
2: "BlueViolet"
3: "BlueViolet"
4: {numColorMatch: 2, numExactMatch: 2}
Копировать конец
Я не могу понять, чтовызывает это, советы приветствуются.Спасибо