首页 / 浏览问题 / 三维GIS / 问题详情
调用load方法加载不存在的场景url页面会卡顿很长时间
8EXP 2018年06月06日

使用产品:SuperMap iClient3D for Plugin

操作系统:win7 x64 || win10 x64
问题详细描述:超图插件调用load方法加载一个不存在的场景url,load方法页面会卡顿很长时间在返回false,有什么方法可以判断这个url是否为正确路径,或者可以规避这样的问题

代码:
//控件初始化完成后的回调函数,初始化完成之后才能进行数据加载
    initCallback : function() {
        this.scene = this.threeDimensionalMap.get_scene();
        //获取三维图层集合
        this.layer3Ds = this.scene.get_layer3Ds();
        //获取地形图层集合
        var sceneServicesList = this.threeDimensionalMap.get_sceneServicesList();
        if (!this.mapUrl) {
            return;
        }
        //从指定的服务器获取场景的图层服务信息,获取成功返回 True

       //这段调用load方法代码会加载很长时间
        var bLoad = sceneServicesList.load(this.mapUrl);
        if (!bLoad) {
            alert(this.nlsSL.GET_LAYER_FAIL);
            return;
        }

}

1个回答

您好,您自己去判断url是否有效,有效的话再去加载。
5,985EXP 2018年06月06日
您好,超图有方法来校验这个url吗
因为超图地图服务是在另外一台服务器上,无法通过方法什么的直接获取一个准确的URL,我自己手动配置可能会配置错误(例如:多打个/),这样调用load方法时整个js就卡住了,有什么方法可以避免吗

您在load前肯定能获取到要load的url地址啊,参考http://www.jb51.net/article/47590.htm

...