【问题标题】:bracket notation does not work with aframe括号表示法不适用于框架
【发布时间】:2019-06-26 16:54:55
【问题描述】:

使用 A-Frame 时,无法访问以破折号命名的组件,例如“orbit-controls”。

我正在尝试访问框架组件“轨道控制”。链接如下:

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

【问题讨论】:

    标签: javascript html three.js aframe


    【解决方案1】:

    您应该等到实体完全加载后再抓取this.el.components['orbit-controls']

    this.el.addEventListener('loaded', e => {
       console.log(this.el.components['orbit-controls']
    })
    

    azimuth 组件添加在 orbit-controls 之前,因此当第一个被初始化时,后者可能还没有准备好。

    小提琴here.

    【讨论】:

      猜你喜欢
      • 2012-09-19
      • 2016-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-04
      • 1970-01-01
      相关资源
      最近更新 更多