使用A-Frame时,无法访问带有破折号的组件,例如“轨道控件”。
我正在尝试访问aframe组件“轨道控件”。下方链接:
aframe-orbit-controls component
由于此组件的minAzimuthAngle和maxAzimuthAngle无法正常工作,因此我必须访问其源代码才能使用脚本对其进行更改。但是当我尝试访问它时,我无法使用var componentAngle = el.components['orbit-controls'];
获取组件,它返回未定义。当我登录var componentAngle = el.components
,它返回:
那么,如何访问此“轨道控件”?我也试过var getAngle = el.getAttribute('orbit-controls');
哪个返回
这些只是数字,更改它们不会更改实际的minAzimuthAngle。所以我想知道是否有一种方法可以访问第一个图像中显示的属性?非常感谢。
下面是代码链接。
try to access "orbit-controls" component
最佳答案
您应该等到实体完全加载后才能抓取this.el.components['orbit-controls']
:
this.el.addEventListener('loaded', e => {
console.log(this.el.components['orbit-controls']
})
在轨道控制之前添加了方位分量,因此当第一个被初始化时,后者可能尚未准备好。
小提琴here。