Я пытаюсь добавить ключ идентификатора к каждому объекту упражнения, используя object.assign, однако, если я добавляю кратные числа одного и того же объекта.
Новый object.assign переопределяет ключ (directId)для всех с тем же именем.Я попытался использовать циклы, карты, добавить временную метку к ключу, чтобы увидеть, дает ли uuidv1 тот же самый keyid, если объекты точно такие же, но я не верю, что это так.
Кажется, этопроблема с object.assign.
Функция запускается каждый раз, когда я нажимаю на новый объект, а uuidv1 () является генератором уникальных ключей.
Не знаю, что делать дальше.
saveDataToWorkout = obj => {
const objWithId = Object.assign(obj, { directId: uuidv1() });
this.setState({
pendingSavedArr: [...this.state.pendingSavedArr, objWithId]
});
};
04:16:45: Array [
04:16:45: Object {
04:16:45: "avatarURL": 16,
04:16:45: "difficulty": "Easy",
04:16:45: "directId": "d50d5310-c7ad-11e8-a726-e942788f9851",
04:16:45: "equipment": "Machine",
04:16:45: "estimatedTime": 5,
04:16:45: "muscleGroup": "Shoulders and Traps",
04:16:45: "title": "Leverage Shrug",
04:16:45: },
04:16:45: Object {
04:16:45: "avatarURL": 16,
04:16:45: "difficulty": "Easy",
04:16:45: "directId": "d61e4de0-c7ad-11e8-a726-e942788f9851",
04:16:45: "equipment": "Machine",
04:16:45: "estimatedTime": 5,
04:16:45: "muscleGroup": "Shoulders and Traps",
04:16:45: "title": "Smith Machine Shrug",
04:16:45: },
04:16:45: ]
уникальный ключ должен быть добавлен через присвоение объекта, прежде чем он перейдет в состояние реакции.
04:16:46: Array [
04:16:46: Object {
04:16:46: "avatarURL": 16,
04:16:46: "difficulty": "Easy",
04:16:46: "directId": "d50d5310-c7ad-11e8-a726-e942788f9851",
04:16:46: "equipment": "Machine",
04:16:46: "estimatedTime": 5,
04:16:46: "muscleGroup": "Shoulders and Traps",
04:16:46: "title": "Leverage Shrug",
04:16:46: },
04:16:46: Object {
04:16:46: "avatarURL": 16,
04:16:46: "difficulty": "Easy",
04:16:46: "directId": "d61e4de0-c7ad-11e8-a726-e942788f9851",
04:16:46: "equipment": "Machine",
04:16:46: "estimatedTime": 5,
04:16:46: "muscleGroup": "Shoulders and Traps",
04:16:46: "title": "Smith Machine Shrug",
04:16:46: },
04:16:46: Object {
04:16:46: "avatarURL": 16,
04:16:46: "difficulty": "Easy",
04:16:46: "directId": "d6924560-c7ad-11e8-a726-e942788f9851",
04:16:46: "equipment": "Dumbbell",
04:16:46: "estimatedTime": 5,
04:16:46: "muscleGroup": "Shoulders and Traps",
04:16:46: "title": "Smith Machine Behind the Back Shrug",
04:16:46: },
04:16:46: ]