为什么AngularFire只更新一次数据库?
我正在以这样的方式获得用户:
var firebaseURL = "https://..";
angularFire(new Firebase(firebaseURL), $scope, "database").then(function() {
$scope.user = $scope.database.users[0];
});
在视图中:
<input ng-model="user.name" />
当我更改输入时,它只会更新一次,然后才会更改。
另外,如果我使用firebase ui更改了某些内容,则模型不会更新。
答案 0 :(得分:0)
由于您在promise上下文中使用angularFire
函数,因此continuation(then
子句)仅运行一次并且对于初始数据。来自the docs:
来自Firebase的数据是异步加载的,您可以使用承诺在服务器的初始数据加载时收到通知。
我怀疑你想要这样的东西:
angularFire(new Firebase(firebaseURL), $scope, "database");
$scope.$watch("database[0]", function (newVal) {
$scope.user = newVal;
});