Angularjs Firebase获取数据列表
Angularjs Firebase getting a list of data
我正在尝试从Firebase获取数据。我做练习来更好地学习Firebase,我的应用程序就像一个消息应用程序。
我的问题是,我试图得到这些消息数据,但因为他们有一个唯一的id,我不能到达他们。我怎样才能到达messagecontents
, dates
angularish
-> <id>
-> "sender" : "john"
-> "to" : "sarah"
-> "date" : "16/09/2016"
-> "messageContent" : "Something like a long text..."
-> <id>
-> "sender" : "john"
-> "to" : "sarah"
-> "date" : "16/09/2016"
-> "messageContent" : "Something like a long text..."
-> <id>
-> "sender" : "john"
-> "to" : "sarah"
-> "date" : "16/09/2016"
-> "messageContent" : "Something like a long text..."
下面是我的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Test3 Angular</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.4.1/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.4.0/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.4.0/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.4.0/firebase-database.js"></script>
<!-- Leave out Storage -->
<!-- <script src="https://www.gstatic.com/firebasejs/3.4.0/firebase-storage.js"></script> -->
<script>
// Initialize Firebase
firebase.initializeApp(config);
</script>
<script>
var app2 = angular.module("theapp",[]);
app2.controller("generalController",function($scope){
var database = firebase.database();
var rootRef = database.ref();
var subRootRef = rootRef.child("angularish");
$scope.messages = [];
rootRef.push({
"sender":"y",
"to" : "x",
"messageContent" : "Something like a long text",
"date" : "10/06/2016"
});
rootRef.on("value",function(snapshot){
$scope.messages = snapshot.val();
console.log(snapshot.val());
});
});
</script>
</head>
<body>
<div class="container" ng-app="theapp" ng-controller="generalController">
{{ 1+1 }}
<ul>
<li ng-repeat="message in messages">
{{ message.messageContent }}
</li>
</ul>
</div>
</body>
</html>
你错过了一个$scope.$apply()
,因为你在角消化循环之外。
rootRef.on("value",function(snapshot){
$scope.messages = snapshot.val();
console.log(snapshot.val());
$scope.$apply();
});
相关文章:
- 如何使用ajax调用获取数组列表数据(将数组列表数据控制器传递给ajax方法)
- 将 SharePoint 列表数据转换为 HTML
- Google Apps 脚本:是否有键值列表数据类型
- 在 Vista Gadget 中使用 Javascript 获取列表数据
- 在主干视图中填充选择列表数据的常见模式
- 尝试将列表数据放入另一个列表
- Angularjs 使用选择值过滤列表数据
- 如何在jquerymobile自动完成中获取所选列表数据的id
- 如何通过javascript将待办事项列表数据保存到本地存储中
- 以下拉格式显示Sharepoint列表数据
- 使用 jquery 获取列表数据
- jQuery-用列表数据填充隐藏字段的最佳方式
- 无法从angular服务向控制器返回列表数据
- 在teardown()之后调用render()不会显示列表数据
- 从控制器传递的列表数据不会重置Spring mvc
- 使用Javascript更改下拉列表数据
- jQuery移动更改页面上点击动态创建列表(数据来自JSON)
- 用javascript创建的列表不显示来自HTML元素的列表数据
- 使用Jquery从SharePoint 2010站点获取列表数据
- 如何使用JQuery或JavaScript和Fill DropDownList检索sharepoint 2013列表数据