TypeError:在three.js中使用DAT.gui()时未定义DAT

时间:2016-03-24 01:27:54

标签: javascript three.js dat.gui

我试图在我的代码中使用Base来控制BaseChild上的摄像头

我在BaseChild文件中包含以下内容。

DAT.gui

我确保从three.js文件夹

获取文件

当我在index.html文件

中使用以下代码时
<script type='text/javascript' src='../_libs/DAT.GUI.min.js'></script>

我收到以下错误build。 我也尝试用小写字母my.js但仍然是同样的问题。似乎var gui = new DAT.GUI(); gui.add(camera.position, 'x', -500,500).step(5); gui.add(camera.position, 'y', -500,500).step(5); gui.add(camera.position, 'z', 1000,5000).step(5); 无法访问TypeError: DAT is undefined,但为什么可以访问其他文件。

2 个答案:

答案 0 :(得分:0)

它假设是这样的小写..

var gui = new dat.GUI();
    gui.add(camera.position, 'x', -500,500).step(5);
    gui.add(camera.position, 'y', -500,500).step(5);
    gui.add(camera.position, 'z', 1000,5000).step(5);

现在处于大写状态就像你做的那样:

var gui = new DAT.GUI();
    gui.add(camera.position, 'x', -500,500).step(5);
    gui.add(camera.position, 'y', -500,500).step(5);
    gui.add(camera.position, 'z', 1000,5000).step(5);

这就是为什么它说DAT未定义。希望这有帮助!

修改

嗯,我刚看到你试过dat小写..这里的问题是缩小的javascript版本..我真的不推荐min.js ...你能试试.js吗?

EDIT2

嗯,这次,您可以通过格式化所有代码进行检查:

var params = {
    z: 100
}

gui.add(params, 'z', -500, 500).step(5).onChange(function(value) {
    camera.position.z = value;
});

如果那个剂量不好需要有一个吸虫。

答案 1 :(得分:0)

我遇到了同样的问题,并且意识到在我的index.html文件中,我主要的javascript文件是在之后采购了dat.gui库。将dat.gui脚本src移到之前,我的main.js脚本src修复了此问题。