我在点击时添加一个eventListener,为一个对象添加一个raycaster,但是当我点击该对象时没有任何反应。如果我打开aframe-inspector并检查对象而不进行任何更改,我将返回场景并再次单击该对象,它会向我显示eventListener中的console.log。有人知道为什么以及如何解决它?
这是我的代码:
AFRAME.registerComponent('dinning-options', {
init: function () {
console.log('Registered');
this.el.addEventListener('click', function (evt) {
console.log('I was clicked at: ', evt.detail.target);
});
}
});
<a-entity
dinning-options
raycaster="showLine: false; far: 100"
obj-model="obj: #dinning-obj; mtl: #dinning-mtl;"
id="dinning"
position="7.430 0 -6.35"
scale="0.003 0.003 0.003"
></a-entity>
谢谢!
答案 0 :(得分:0)
应该在发出它的实体上设置raycaster,在这种情况下它应该是带有光标的相机。您可以在cursor component内进行配置(raycaster白名单,远程)。
尝试放置一个基本的<a-camera><a-cursor></a-cursor></a-camera>
实体,然后搞乱它的raycaster设置。