Я пытаюсь скопировать объект и добавить новое свойство с помощью оператора распространения в моем приложении Angular. Чтобы добавить новое свойство, я хочу вызвать метод addNewProperty (name), который возвращает это свойство и его значение. Когда я пытаюсь вызвать этот метод с помощью оператора распространения, я получаю сообщение об ошибке «Неожиданный токен».
Это мой код
this.files = files['results'].map(file => ({...file, this.addNewProperty(file.name)}));
addNewProperty(name) {
return {
extension: name.split('-')[1]
};
}
С другой стороны, когда я использую "традиционный" Object.assign (), тогда все хорошо
this.files = files['results'].map(file => Object.assign(file, this.addNewProperty(file.name)));
Может Вы объясните мне, почему Object.assign () работает правильно, а копирование с помощью {..., myMethod ()} не работает?