Javascript 将firebase连接到Angular JS-可能存在json问题
问题是如何格式化firebase以使用angular。我有一个作为静态视图使用ng的视图。在$scope中,它的定义如下Javascript 将firebase连接到Angular JS-可能存在json问题,javascript,angularjs,json,firebase,firebase-realtime-database,Javascript,Angularjs,Json,Firebase,Firebase Realtime Database,问题是如何格式化firebase以使用angular。我有一个作为静态视图使用ng的视图。在$scope中,它的定义如下 $scope.standardItems = [{ name: "The Name", sizeX: 2, sizeY: 1, row: 0, col: 0 }, {......etc 但如果我尝试从firebase提供数据,它可能无法工作,因为输出格式不正确。连接似乎很好,我可以添加数据,但firebase添加了自己的id。这是从f
$scope.standardItems = [{
name: "The Name",
sizeX: 2,
sizeY: 1,
row: 0,
col: 0
}, {......etc
但如果我尝试从firebase提供数据,它可能无法工作,因为输出格式不正确。连接似乎很好,我可以添加数据,但firebase添加了自己的id。这是从firebase控制台导出数据的方式
{
"-KdJVcYUXMfeym3jPy04" : {
"att" : "grid",
"col" : 0,
"id" : 1487476528646,
"name" : "This is a test grid",
"row" : 0,
"sizeX" : 2,
"sizeY" : 1
},
额外的参数并不重要,但嵌套可能很重要。我已使用此命令注销firebase阵列的输出
var todosRef = new Firebase('https://xxxxxxxxxx.firebaseio.com/');
$scope.todos = $firebaseArray(todosRef);
console.log($scope.todos);
我在chrome调试控制台中得到了这个
Array[0]
0:Object
$id: "-KjhbuvgtVvFUnbfbmj04"
$priority:null
att:"grid"
col:0
id:1487476528646
name:"This is a test grid"
row:0
sizeX:2
sizeY:1
__proto__
这是使用角度ng repeat的视图中的重要线
<li gridster-item row="item.position[0]" col="item.position[1]" size-x="item.size.x" size-y="item.size.y" ng-repeat="item in todos">
//..
</li>
//..
我的问题是如何将上面静态示例中从控制器传递的内容传递给angular(视图)?如何“打印”从阵列传递到angular的内容?firebase控制台和chrome日志控制台的导出并不完全相同。所有父节点都是唯一的非顺序ID(如-KdJVcYUXMfeym3jPy04),这并没有帮助,因为不清楚如何再次剥离它们,或者如何使用“grid”等词。路径中是否需要通配符?如果需要,是什么?该代码使用静态本地数组工作,因此它完全是关于从firebase读取json的 好的,我希望这个答案有帮助。这里发布的代码没有问题!Angular js将读取firebase而不做任何更改,chrome控制台和firebase控制台的输出应该看起来像这里一样,即使添加了“-adgadhfe445ggh45”id索引。在我的例子中,我犯了一个语法错误,将ng repeat从控制器中排除,因为它落在外部,并且是结束div 但至少我们现在知道,我们不需要任何代码来重新格式化firebase