我对使用angularfire如何使用angular / firebase做一个非常非常微不足道的模式感到困惑。
想象一下,你有一个小老的博客。你有一些$ scope.posts,你重复它们。现在,您希望能够点击一个帖子并将其路由到该帖子的页面'/ posts /:id'。由于$ firebaseArray元素不包含$ id的如何将单个帖子的唯一ID传递给url并传递到postsCtrl ?
<a ng-repeat="post in posts href="/posts/{{??????}}">{{post.title}}</a>
更新
我想到的解决方法是每当我保存一个新帖子时,我可以保存一个名为“key”的属性,然后按照我通常在其他框架中使用“id”属性的方式使用它。
$firebaseArray(postsRef).$add($scope.post).then(function(ref) {
ref.update({ key: ref.key()});
});
感谢您的帮助。
答案 0 :(得分:-1)
你的本能是正确的,黑客不是答案。而是使用angular的内置(键,值)选项进行ng-repeat:
<div ng-repeat="(id, post) in posts">
<a ng-href="/posts/{{post.id}}">{{post.title}}</a>
</div>
有关如何将AngularFire与ng1一起使用的其他参考资料可在此repo
中观察到