У вас, по сути, есть проблема с областью действия ваших объектов.(подробнее здесь: https://docs.angularjs.org/guide/scope)
Внутри вашего ng-повтора для каждого блока создается дочерняя область, которая создает собственную копию / ссылку на переменную, указанную в ng-model
, если только вы используете точечную модель для свойств модели (что очень рекомендуется при использовании ng-модели).
Например, вместо $scope.city = ...
и в вашем html ng-model="city"
вы должны вместо этого что-то сделатькак:
$scope.selection = {
city: "",
state: "",
country: ""
}
и ваш html вы бы сделали ng-model="selection.city"
Это решит одну из ваших проблем, но вы, вероятно, все еще столкнетесь с некоторыми другими проблемами, потому что вы делитесь состоянием сОсновная форма выбора (или, возможно, вы будете в порядке с таким поведением). Я не уверен, как вы хотите и / или планируете обновить «отредактированное» местоположение после того, как пользователь делает свой выбор, поэтому я не хочу давать многоеще совет, но может иметь смысл, чтобы ng-модель в таблице использовала значения в location
(то есть ng-model="location.city"
), но тогда вам также придется изменить способ обновления последующего удаления.вниз значения.