Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
面向对象JavaScript+;Three.js:OrbitControl不工作_Javascript_Three.js - Fatal编程技术网

面向对象JavaScript+;Three.js:OrbitControl不工作

面向对象JavaScript+;Three.js:OrbitControl不工作,javascript,three.js,Javascript,Three.js,我正在玩一些面向对象的JavaScript 代码: 我的浏览器显示正确的输出,但OrbitControl似乎不起作用。你知道我该怎么做吗?在函数(非原型)中吐出轨道控件不是一个解决方案,因为我不会将变量传递到模型外部。您遇到的错误来自仅显示的一帧。 您需要使渲染循环递归。你有 requestAnimationFrame(ixmodel.render); 评论说。这将允许显示您的更新。取消注释,它应该可以工作。第75行,OrbitControls是一个有文档和窗口的浏览器吗?@fuyushimo

我正在玩一些面向对象的JavaScript

代码:


我的浏览器显示正确的输出,但OrbitControl似乎不起作用。你知道我该怎么做吗?在函数(非原型)中吐出轨道控件不是一个解决方案,因为我不会将变量传递到模型外部。

您遇到的错误来自仅显示的一帧。 您需要使渲染循环递归。你有

requestAnimationFrame(ixmodel.render);

评论说。这将允许显示您的更新。取消注释,它应该可以工作。

第75行
,OrbitControls是一个有
文档
窗口
的浏览器吗?@fuyushimoya它是一个web应用程序,这是一个检查是否加载的调用。我对它进行了注释,因为它给了我一个
[Error]类型错误:参数1('callback'))to DOMWindow.requestAnimationFrame必须是函数requestAnimationFrame(app.js,第70行)render(app.js,第70行)(匿名函数)(app.js,第84行)
error在if语句之外定义ixmodel。(等待给它一个值,直到它达到setTimeout)。用ixmodel.render()替换this.callback;如果仍然出现错误,可能是因为您使用了“use strict”。谢谢,但现在出现此错误:
[error]TypeError:undefined不是对象(评估'ixmodel.render')render(app.js,第70行)(匿名函数)(app.js,第85行)
。我更新了代码库以匹配您的注释:您仍然覆盖在if语句之外声明的ixmodel。从语句中的ixmodel中删除'var'关键字。哦,在requestAnimationFrame()内的ixmodel.render上没有括号;当然谢谢你,伙计。现在我得到一个
超过最大调用堆栈大小的
错误。。。调查