【发布时间】:2016-02-21 19:06:04
【问题描述】:
我正在尝试向我的应用程序添加编辑功能。在一个视图中,我有一个将您带到编辑页面的按钮。
<button ng-click="editMission(selectedMission.key)">Edit Mission</button>
selectedMission.key 的值用于确定用什么来初始化编辑页面的表单数据。
在控制器中,函数如下所示:
$scope.editMission = function(key){
$location.path('/edit');
}
在我的编辑页面上:
<div data-ng-init="editInit()">
在我的控制器中我有:
$scope.editInit = function(){
var query = myDataRef.orderByKey();
query.on("child_added", function(missionSnapshot){
if (missionSnapshot.key()==key){
...
}
});
}
如何根据来自editMission 的键值运行初始化函数。我应该对全局键变量使用一些 getter/setter 方法吗?我尝试将editInit 代码放在editMission 中,但表单数据不会在视图加载时填充。
【问题讨论】:
-
你不能用 editMission() 设置范围变量,然后将这些变量绑定到视图中的表单(ng-model)吗?
-
您使用的是
ngRoute还是ui-route? -
@drakyoko 可以这样做,但字段和单选按钮在视觉上不会更改为变量值。
-
@georgeawg 我也没用过,不知道是什么。
-
我建议您使用 AngularFire.AngularFire 是 Firebase 官方支持的 AngularJS 绑定。它与 AngularJS
$q服务集成。
标签: angularjs firebase angularfire angularjs-ng-init