Мой вопрос может быть глупым, так как я новичок в JS и AngularJS, но я кое-что заметил.У меня есть список и функция:
$scope.persons = [{
"id": 1,
"name": "Mark",
"alive": true
}, {
"id": 2,
"name": "Tom",
"alive": true
}, {
"id": 3,
"name": "Jack",
"alive": false
}, {
"id": 4,
"name": "William",
"alive": true
}, {
"id": 5,
"name": "Scott",
"alive": true
}, ];
$scope.kill = function(person) {
person = {
"id": person.id,
"name": person.name,
"alive": !person.alive
};
console.log(person);
}
Этот список используется для создания таблицы.
<table>
<tbody>
<tr ng-repeat="person in persons">
<td>Name : {{person.name}}</td>
<td>Alive? : {{person.alive}}</td>
<td>
<button ng-click="kill(person)">{{person.alive? 'Kill' : 'Reborn'}}</button>
</td>
</tr>
</tbody>
</table>
Когда я нажимаю кнопку, она должна переключать значение человека.в живых.С этим кодом это не работает.Но, если функция kill () имеет вид:
$scope.kill = function (person) {
person.alive = !person.alive;
console.log(person);
}
Это работает!Я сделал ошибку в первой функции или это просто нормально?
С уважением,