我一直在使用AngularFire,并且我理解有关集合的文档。但我觉得当涉及到在集合中加载特定项时,除了在数组中的位置之外,我完全遗漏了一些东西。
Firebase数据中的所有示例都有漂亮的api名称,如user/name/first
但是当我使用angularFireCollection保存一个集合时,我在一个唯一的$id中得到了我的对象。(不是很漂亮)
这是预期的行为吗?如果是这样,我如何获取()一个基于值的项呢?
例如。我创建了一个名为slug的密钥。在集合中有‘my- the’的。我想通过$routeParams加载它。
.when('/themes/:slug/', {
templateUrl: 'views/theme.html',
controller: 'ThemesCtrl'
})如何将对象加载到主题/my-theme而不是主题/-J50neNBViK9l7P4QAYc
先谢谢你...
发布于 2013-10-09 02:01:45
angularFireCollection使用自动生成的增量ID(由Firebase的push()方法生成)自动创建一个项目列表。如果您想创建一个具有自定义名称的项目列表,angularFire可能是一个更好的服务(它使用set而不是push)。例如:
function ThemesCtrl($scope, angularFire) {
$scope.themes = {};
angularFire(new Firebase(URL), $scope, 'themes');
$scope.addTheme = function() {
$scope.themes["my-theme"] = $scope.currentTheme;
}
}https://stackoverflow.com/questions/19175375
复制相似问题