Я хотел бы понять, как привязки работают в angularJS. Я попытался создать код как можно проще, чтобы показать вам проблему mu. Я знаю, как это использовать, но я не знаю, как это работает.Связывание между контроллером и фабрикой в AngularJS
Вот мой пример. В этом у меня есть 3 области видимости переменных: Plunker
<pre>{{A}}</pre>
<pre>{{B}}</pre>
<pre>{{C()}}</pre>
Они определяются следующим образом:
$scope.A = factory;
$scope.B = factory.a;
$scope.C = function() {
return factory.a.b;
};
завод под названием "Фабрика" возвращает этот объект:
a: {'b': 'foo'}
обновления таймаута завод этот путь:
$timeout(function() {
factory.a = {
'b': 'BOO'
}
}, 1000);
Я хотел бы спросить, может ли кто-нибудь дать мне ясный ответ, почему только первый (A) и третий (C) обновляются после таймаута, но не второй.
The B - это коллекция (объект) в Angular. Значения и функции будут обновляться в дайджесте, атрибуты объекта не будут обнаружены во время «грязной» проверки. – ryan0319