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