我正在使用Three.js制作3D应用程序。在此应用程序中,我需要具有带相机的控制系统。我正在为这个控制系统使用轨迹球控制。但是当我添加一个事件侦听器时,会出现一个奇怪的错误:Unable to preventDefault inside passive event listener due to target being treated as passive.
它包含一个链接:这个铬网站
我理解错误,但是有没有办法解决此错误?此错误来自以下行:event.preventDefault();
一些代码:
var control = new THREE.TrackballControls(camera);
control.addEventListener("change", render);
function render() {
renderer.render(scene, camera);
}
function update() {
renderer.render(scene, camera);
control.update();
requestAnimationFrame(update);
}
我希望有人能够帮助我。提前感谢!
var control = new THREE。轨迹球控制(摄像头(;
请始终这样创建TrackballControls
:
var control = new THREE.TrackballControls(camera, renderer.domElement);
有一个新的 PR 将使第二个参数TrackballControls
强制性的,并防止document
作为参数。
https://github.com/mrdoob/three.js/pull/17612
three.js R109
此消息是一个警告。这不会损害 Web 应用程序。
但这有点烦人。您可以使用此方法关闭此警告:
而不是使用这个:
control.addEventListener("change", render);
把它放在代码中:
control.addEventListener("change", render, { passive: false });