Javascript 类型Then的类型Error属性未定义

Javascript 类型Then的类型Error属性未定义,javascript,java,jquery,json,Javascript,Java,Jquery,Json,您需要关闭函数,修复如下语法: Var Map, CachedGeoJson; var promise = that.map.data.loadGeoJson('https://api.myjson.com/bins/31e3j'); promise.then(function(data) { cachedGeoJson = data; map.data.addGeoJson( 'https://api.myjson.com/bins/31e3j',

您需要关闭函数,修复如下语法:

Var Map, CachedGeoJson;

var promise = that.map.data.loadGeoJson('https://api.myjson.com/bins/31e3j'); 

promise.then(function(data) {
    cachedGeoJson = data; 

    map.data.addGeoJson(
        'https://api.myjson.com/bins/31e3j',
        { idPropertyName: "id"}
    );

您可以尝试创建另一个函数来创建promise对象,因为google
loadGeoJson
不返回promise对象

Var Map, CachedGeoJson;

var promise = that.map.data.loadGeoJson('https://api.myjson.com/bins/31e3j');

promise.then(function(data) {
    cachedGeoJson = data; 

    map.data.addGeoJson(
        'https://api.myjson.com/bins/31e3j',
        { idPropertyName: "id"}
    );
});

您可以检查promise中存在哪些属性

function loadGeoJson(url, options) {
    var promise = new Promise(function (resolve, reject) {
      try {
        that.map.data.loadGeoJson(url, options, function (features) {
            resolve(features);
        });
      } catch (e) {
        reject(e);
      }
    });
    return promise;
}

var promise = loadGeoJson('studs.json');

promise.then(function (features) {
    map.data.addGeoJson(
        'https://api.myjson.com/bins/31e3j',
        { idPropertyName: "id"}
    );
});

请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前所写的,很难准确地说出你在问什么。
for (var property in promise) {
    if (promise.hasOwnProperty(property)){
        alert(property);
    }
}