【解决办法】更新为iClient3D for WebGL 最新双周包后问题得到解决。
链接:
https://pan.baidu.com/s/1lxRo4qqCGlJWykqMi8ZE3A?pwd=wpnh
另外注意到:第三方插件(Swiper.js)污染了Array对象原型链会导致iClient3D for WebGL 加载S3M图层异常。
解决办法:请在构造viewer对象之前使用如下代码清除原型链污染。
在构造viewer之前,重新定义第三方插件添加到Array原型链上的方法为不可枚举,
例如:
Object.defineProperty(Array.prototype, 'max', {
value: function() { return Math.max.apply(null,this); }, // 将第三方插件添加的方法代码放到这里
enumerable: false, // 关键:设置为不可枚举
writable: true,
configurable: true
});
Object.defineProperty(Array.prototype, 'min', {
value: function() { return Math.min.apply(null,this); },// 将第三方插件添加的方法代码放到这里
enumerable: false, // 关键:设置为不可枚举
writable: true,
configurable: true
});
// 所有第三方插件对Array添加的方法都要添加通过以上方式设置为不可枚举。