如何在Firebase Angularjs中使用$id作为数字或新的var



所以我有这个$scope来调用Firebase中名为Questions 的表

$scope.questions=$firebaseArray(fireBaseData.refQuestions());

我用这种方式调用数据库

{{questions}}

它显示的和这个完全一样

[{"nama":"Perkataan yang saya sampaikan dapat diingat dan berkesan untuk orang lain.",
"nilai":"item7",
"$id":"1",
"$priority":null
},
{"nama":"Saya sering mengucap “terimakasih” atas pertolongan orang lain agar terlihat ramah.",
"nilai":"item6",
"$id":"2", // THIS VALUE THAT I NEEDED
"$priority":null
}]

问题:

我想要的是把$id value像2一样称为新的var$scope,这样我就不能把它们称为问题号

因为我需要新的var$scope,比如

$scope.questionNo = $firebaseArray(fireBaseData.refQuestions().$id);
$scope.question =;
$scope.totalQuestions = $scope.questions.length;
$scope.currentRoute = $scope.questionNo;

但失败

您的问题需要澄清,但由于StackOverflow不允许我发表评论,所以到此为止。。。

如果我理解正确,您正试图通过$id访问特定问题,因此您需要执行以下操作:

$scope.questions = $firebaseArray(fireBaseData.refQuestions().orderByChild('$id').equalTo('2'));
$scope.question = $scope.questions[0];

你可以检查angularfire文档和firebase文档的过滤。

然而,这种情况将主要受益于不同的数据库结构,如这里所解释的。如果这是存储问题的密钥,那么通过他们的$id访问问题会容易得多,在这种情况下,你可以简单地进行

$scope.question = $firebaseObject(fireBaseData.refQuestions().child('2'));

最新更新