Получение данных для двухстороннего связывания данных
Почему у меня нет доступа к данным из метода, определенного в методе onclick?
onclick: function(d, i) {
$scope.country = d.name;
console.log($scope.country);
}
Я хочу получить имя от объекта и показать в HTML <h1>Clicked: {{country}}</h1>
Plunker
1 ответ
Решение
Внутри директивы country-item определена отдельная область. Итак, вам нужно передать страну в html:
<country-item country="country"></country-item>
Если вам нужно добавить такое же поведение при нажатии на панели диаграммы, вы должны добавить $scope.$ Apply() в обратный вызов onClick:
onclick: function(d, i) {
$scope.country = d.name;
$scope.$apply();
}
Цикл дайджеста завершен, и вам нужно сообщить Angular, что что-то изменилось.