最近 Autodesk Forge 颁布了版号 2.15 的 Viewer,同时在 Viewer.loadExtension
这个函数的回传值上有重大的变动。先前的版本是回传布林值(Boolean),从 2.15 版开始回传 ES2015(ES5) 的 Promise,若是您之前没接触过 Promise 能够参考 Google 的这篇文章,下方两个版本的比照:web
// 板号 2.14 以及之前的版本 // Synchronous code, 从版号 2.15 开始不被支持了 var res = viewer.loadExtension('MyExtensionID') if (res) { // 扩展载入成功 var myExtension = viewer.getExtension('MyExtensionID') myExtension.callMethod(...) } // 版号 2.15 及之后的版本 - ES5 viewer.loadExtension('MyExtensionID').then( function(myExtension) { myExtension.callMethod(...) }, function (err) { console.log('扩展载入失败: ') console.log(err) }) // 版号 2.15 及之后的版本,使用 ES6/async try { const myExtension = await viewer.loadExtension( 'MyExtensionID') myExtension.callMethod(...) } catch (ex) { console.log('扩展载入失败: ') console.log(err) }
参考:https://forge.autodesk.com/bl...promise