AngularJS обновление var в DOM, на которое ссылается функция через контроллер
Как я могу обновить значение переменной, отправленной в функцию, из той же самой функции?
HTML:
Message is: {{ msg }}
<button ng-click="updateVar(msg)">Update</button>
AngularJS:
$scope.msg = 'Init';
$scope.updateVar = function(varToUpdate) {
varToUpdate = 'Var was updated!';
};
Я не могу сделать $scope.msg = 'Var was updated!';
, поскольку в функции, которую я пишу, у меня есть много переменных, которые можно обновить, и я не хочу писать разные случаи для каждой отдельной переменной.
Спасибо!
1 ответ
Решение
updateVar(msg)
передает значение $scope.msg
к функции.
Вы хотите передать имя переменной (точнее, имя свойства $scope): updateVar('msg')
И ваша функция может затем использовать имя переменной, чтобы изменить ее значение:
$scope.updateVar = function(varToUpdate) {
$scope[varToUpdate] = 'Var was updated!';
};