0

我想动态显示我的记录的字段名称:

例子:

如果我有这三个记录

{
    "_id": {
        "$oid": "blahblah"
    },
    "firstName": "Jon",
    "lastName": "Doe",
    "age" : "55"
}
{
    "_id": {
        "$oid": "blahblahblah"
    },
    "firstName": "Johnny",
    "lastName": "Doedoe",
    "weight" : "555lb"

}

我想用 angularjs 在我的网页中显示的是:

名字:乔恩

姓氏:Doe

年龄:55


名字:强尼

姓氏:Doedoe

重量:555磅

我知道如何获取特定值,例如获取名字我可以这样做:$scope.person.firstname(这当然是一个例子),但是我怎样才能得到标签“名字”。我如何要求 angularjs 获取所有标签?

谢谢

4

2 回答 2

1

您必须向数据库写入查询以获取这些记录,具体取决于您的服务器,该查询看起来会有所不同。以下是调用的节点版本

function getNames() {
    db.collection.find().toArray(function(data, err) { 
        if (err)
            //do something
        else
            res.send(data);
    });
}

现在,从 AngularGET调用您的服务器:

$http.get(url).success(function(data) {
    $scope.names = data;
});

现在您已经$scope.names设置了来自 serv 的数据数组。使用 anng-repeat显示所有内容:

<div ng-repeat="name in names">
    <span ng-repeat="(key, val) in name">{{key}}:{{val}}</span>
</div>

就是这样(嗯,基本上,毫无疑问你必须调整它)。

于 2013-10-16T18:58:40.407 回答
0

不确定您是否将 Express 和 Jade 与 Angular 一起使用,但如果您不想发出单独的 http 请求(取决于您的应用程序的配置方式),您可以编写一个可以与任何控制器重用的 Angular 服务。

该服务的目的是获取 json 并将其放入您当前的范围内,以便您的控制器可以使用它。您还可以在每个页面(即在每个控制器中)注入此服务依赖项,它会为您加载文档。

博客文章和完整的回购在这里

于 2013-10-17T15:32:27.623 回答