在AngularFire中迭代项目列表时,如何获取每个项目的ID
When iterating through a list of items in AngularFire, how do I get the ID of each item?
控制器:
...
$scope.items = ItemService; // This is injected correctly, no problem here.
...
HTML:
<div ng-repeat="item in items">
<a ng-href="#/items/{{ item.id }}">{{ item.name }}</a>
</div>
我的问题是…如果我使用.$add()
(Firebase的.push()
)添加项目,我不知道如何获得自动生成的ID…
有什么想法吗?
事实证明,您可以在(key, value)
上迭代,这就完成了任务:
HTML:
<div ng-repeat="(id, item) in items">
<a ng-href="#/items/{{ id }}">{{ item.name }}</a>
</div>
除了对键/值进行迭代外,$firebase中的每个记录(假设它不是基元值)都会将键附加为$id
:
<div ng-repeat="item in items">
<a ng-href="#/items/{{ item.$id }}">{{ item.name }}</a>
</div>
这个问题的答案如下:https://stackoverflow.com/a/21996544/975669
答案:
angularFire$add方法返回一个promise,解析后将包含对新推送值的Firebase引用。使用该值,您可以获得UID。
$scope.tests.$add({
...your object....
}).then(function(ref) {
//this is your id
var id = ref.name();
});
相关文章:
- 如何获取不属于我项目的上一页的URL
- AngularJS获取范围中的选定项目
- 获取中继器控件ASP.Net中显示的单击项目文本框
- 从下拉列表中获取所选项目,并将其保存到php变量中
- 如何根据单击的项目在modalbox中获取值
- 获取每个项目中不为 null 的最后一个项目
- 获取唯一的项目-Handlebars
- 获取特定视图的项目计数
- 如何在angular js中的select选项中获取所选项目id
- 铁路由器获取当前项目
- 与杜兰达尔合作的第一个JavaScript项目.尝试从第三方 API 获取数据
- Lodash 从与值数组不匹配的数组中获取项目
- 在 JavaScript 对象中添加子对象时获取“无法设置未定义的属性'项目'”
- 获取项目的顺序 jQuery 可排序并设置它们的顺序
- 语义 UI 手风琴获取打开事件中打开的项目的索引
- 拉力赛:有没有一种简单的方法来获取项目组合项目下的所有用户故事
- 如何过滤推特流API订阅源,只获取与新闻相关的项目
- 如何在Sonarqube Javascript扩展中获取项目路径
- jQuery.数据集's或获取's的项目不对
- Uikit.可嵌套组件-如何从移动的项目获取id