我创建了一个nodejs应用程序,它将读取我的mongo Db中的所有数据库。我能在控制台中做到这一点。但是,当我尝试将数据解析为json对象并将其显示在屏幕上时,我无法设法获取要显示的信息。希望有人可以帮我弄清楚如何或告诉我我做错了什么。谢谢
app.js
// listen for get request, aka transfers the info in mongo to client
app.get('/databases', function (req, res) {
console.log("-- recived GET request --");
db.open(function(err, db) {
// Use the admin database for the operation
var adminDb = db.admin();
// List all the available databases
adminDb.listDatabases(function(err, dbs) {
assert.equal(null, err);
assert.ok(dbs.databases.length > 0);
console.log(dbs);
res.json(dbs);
db.close();
});
});
});
controller.js
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
console.log("controller connected");
function refresh(){
// create route
$http.get('/databases').success(function(response) {
console.log("recived data requested");
$scope.databases = response;
});
}
// Call refresh to get req
refresh();
});// Controller
的index.html
<body>
<div ng-app="myApp" ng-controller="customersCtrl">
<ul>
<li ng-repeat="contact in databases">
{{ contact }}
</li>
</ul>
<button type="button" onclick="hitMe()">Click Me!</button>
</div>
</body>
答案 0 :(得分:2)
看起来你需要遍历datebases.databases对象。 只要$ scope.databases是:
{
databases: [],
totalSize: ..,
..
}
您的页面上需要以下ng-repeat:
<ul>
<li ng-repeat="contact in databases.databases">
{{ contact.name }}
</li>
</ul>
答案 1 :(得分:0)
正如安德鲁所说,在你的HTML代码中尝试contact.name。
“联系”本身就是整个对象。你必须指定你想要使用的对象的哪个部分。