Angular ng-repeat列出具有未知属性名称的对象中的所有项目

mar*_*234 3 angularjs angularjs-ng-repeat

我对(真正的)javascript很新,对Angular很新

我正在为家庭自动化编写一个应用程序.该应用程序返回一个设备列表,然后当您单击某个设备时,它会通过JSON返回它的详细信息(如下例所示).我遇到的问题是不同的设备类型在对象中返回不同的名称值对,我赢了;事先知道这些.(例如,灯开关将返回调光水平,但恒温器返回传感器水平.

显然,我的应用程序只能处理具有已知属性的内容(例如,如果它是光,则设置调暗级别),但用户可能希望查看所有属性.他们是否可以使用ng-repeat列出所有名称值对而不知道属性名称?

例:

 {
    "name": "1-Wire Test1",
    "address": 0,
    "addressStr": "unknown",
    "classID": 3,
    "devProtocol": 999,
    "displayInUI": true,
    "displayLongState": "76.7 °F",
    "displayRawState": "76.700000",
    "folderID": 1418405935,
    "hasStateToDisplay": true,
    "id": 704024169,
    "lastChanged": 456266814,
    "lastChangedDateStr": "2014-06-16",
    "lastChangedRFC3339": "2014-06-17T01:46:54Z",
    "lastChangedRFC822": "Tue, 17 Jun 2014 01:46:54 GMT",
    "lastChangedTimeStr": "08:46:54 PM",
    "sensorValue": "76.7 °F",
    "type": "1-Wire Temperature Sensor",
    "typeFlags": 81,
    "typeSupportsDim": false,
    "typeSupportsEnergyMeter": false,
    "typeSupportsHVAC": false,
    "typeSupportsIO": false,
    "typeSupportsOnOff": false,
    "typeSupportsSensorValue": true,
    "typeSupportsSpeedControl": false,
    "typeSupportsSprinkler": false,
    "versByte": 0,
    "restParent": "devices"
}
Run Code Online (Sandbox Code Playgroud)

tym*_*eJV 13

当然,使用(k, v) in o重复语法:

例如:

<span ng-repeat="(property, value) in phoneProperties">{{property}} : {{value}}</span>
Run Code Online (Sandbox Code Playgroud)