我收到如下错误: Uncaught TypeError:无法读取null的属性’__webglFramebuffer’
当我转到与附加了Autodesk Viewer的页面链接的另一个页面时。我不知道为什么会这样。我正在为我的网站使用angularjs,该页面的控制器中没有关于查看器的代码。
之所以收到此错误,是因为您没有破坏左页面上的查看器实例,因此当接收到诸如页面大小调整之类的事件时,查看器将尝试重新渲染,并且由于WebGL上下文已被破坏,它将引发此错误。
只需放置一些清理处理程序,当您离开查看器页面导航时,就可以根据所使用的角度版本轻松找到方法,然后放置以下代码来清理查看器:
// assumes this.viewer contains your viewer, your code might be different ... // make sure viewer has been created if (this.viewer) { // I added this to handle some specific cases if(this.viewer.impl.selector) { this.viewer.tearDown() this.viewer.finish() this.viewer = null } }