Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 嵌套指针数据_Javascript_Angularjs_Parse Platform_Parse Server - Fatal编程技术网

Javascript 嵌套指针数据

Javascript 嵌套指针数据,javascript,angularjs,parse-platform,parse-server,Javascript,Angularjs,Parse Platform,Parse Server,我使用解析服务器Javascript API调用下面的解析查询。我有一个名为Device的类,它有一个指向Device\u Type的指针对象,该指针对象又有一个指向制造商的指针 我可以成功地在inventoryItem中显示deviceID,但是对于制造商来说没有定义,尽管JSON网络返回中有相关数据 $scope.getDeviceItems = function () { var query = new Parse.Query("Device"); query.includ

我使用解析服务器Javascript API调用下面的解析查询。我有一个名为Device的类,它有一个指向Device\u Type的指针对象,该指针对象又有一个指向制造商的指针

我可以成功地在inventoryItem中显示deviceID,但是对于制造商来说没有定义,尽管JSON网络返回中有相关数据

$scope.getDeviceItems = function () {
    var query = new Parse.Query("Device");
    query.include("Device_Type");
    query.include("Device_Type.Manufacturer");
        query.find({
            success: function (results) {
                $scope.deviceItems = [];
                for (i = 0; i < results.length; i++) {
                    var d = results[i].get("Device_Type");
                    var m = results[i].get("Device_Type.Manufacturer");
                    var inventoryItem = {
                        deviceID: d.get("Device_ID"),
                        manufacturer: m.get("Manufacturer_Name")
                    }
                };
            };
        };
    };

你能同时发布你的
json
数据吗?我想你把你的成功电话弄糟了。通常,当您传递
结果时
您应该执行类似
$scope.eurica=results.data的操作,但我不确定。如果你给我看你的实际数据会更容易。@ZombieChowder我已经用JSON修改了这个问题。谢谢。更改
var m=results[i].get(“设备类型”).get(“制造商”)完全满足了我的需要。不过,你的进一步解释很有见地。我的知识水平不足以回答地图查询。这就是指南所建议的:。希望一些更有经验的解析开发人员能提供进一步的见解。@MrT啊,好的,实际上在链接中,它有一点关于复合材料的使用。get看起来你可能能够做
。get([“Device\u Type.Manufacturer”])
从那里向下滚动到“Counting Objects”的正上方这些文档似乎没有明确地解释任何地方可以做什么。尽管如此
{
    "results": [{
        "objectId": "q3D2myHG3e",
        "createdAt": "2017-07-30T22:28:05.035Z",
        "updatedAt": "2017-09-19T20:40:05.580Z",
        "Device_Type": {
            "objectId": "Ksej3F2sdp5",
            "Device_Name": "Device 1",
            "createdAt": "2017-07-30T21:57:58.638Z",
            "updatedAt": "2017-08-08T20:20:14.397Z",
            "Manufacturer": {
                "objectId": "3NahYBNIiC",
                "Manufacturer_Name": "ABC Ltd",
                "createdAt": "2017-07-30T21:56:40.557Z",
                "updatedAt": "2017-07-30T22:13:07.425Z",
                "Devices": {
                    "__type": "Relation",
                    "className": "DeviceType"
                },
                "__type": "Object",
                "className": "DeviceManufacturer"
            },
            "__type": "Object",
            "className": "DeviceType"
        },
        ...
    }]
}
$scope.getDeviceItems = function () {
    var query = new Parse.Query("Device");
    query.include("Device_Type");
    query.include("Device_Type.Manufacturer");
        query.find({
            success: function (results) {
                $scope.deviceItems = [];
                for (i = 0; i < results.length; i++) {
                    var curResult = results[i];
                    var d = curResult.Device_Type;
                    var m = curResult.Device_Type.Manufacturer;
                    var inventoryItem = {
                        deviceID: d.Device_ID
                        manufacturer: m.Manufacturer_Name
                    }
                };
            };
        };
    };
$scope.getDeviceItems = function () {
    var query = new Parse.Query("Device");
    query.include("Device_Type");
    query.include("Device_Type.Manufacturer");
        query.find({
            success: function (results) {
                $scope.deviceItems = [];
                for (i = 0; i < results.length; i++) {
                    var curResult = results[i];
                    var d = curResult.get('Device_Type');
                    var m = curResult.get('Device_Type').get('Manufacturer'); // or d.get('Manufacturer')
                    var inventoryItem = {
                        deviceID: d.get('Device_ID')
                        manufacturer: m.get('Manufacturer_Name')
                    }
                };
            };
        };
    };