Aframe 使用类和原型模式未定义组件的属性

Aframe 使用类和原型模式未定义组件的属性,aframe,javascript,design-patterns,Aframe,Javascript,Design Patterns,我在JavaScript中使用了类和原型模式。我创建了一个名为NavigatieButton的函数,并得到了一个由三个属性组成的构造函数,分别名为location、rotation和navigatie 在NavigatieButton的原型中,我创建了一个名为init的函数,该函数必须呈现一个“组件” 在render函数中,我使用下面的代码创建了NavigatieButton的一个新实例: var navBtn=新导航按钮('0'); 但是,如果我调用init,则属性位置、旋转和导航未定义 在

我在JavaScript中使用了类和原型模式。我创建了一个名为
NavigatieButton
的函数,并得到了一个由三个属性组成的构造函数,分别名为
location
rotation
navigatie

NavigatieButton
的原型中,我创建了一个名为
init
的函数,该函数必须呈现一个“组件”

render
函数中,我使用下面的代码创建了
NavigatieButton
的一个新实例:

var navBtn=新导航按钮('0');
但是,如果我调用
init
,则属性
位置
旋转
导航
未定义

在这里你可以找到我写的代码

“严格使用”;
功能导航按钮(位置){
这个位置=位置;
}
NavigatieButton.prototype.init=函数(){
var-element=document.createElement('a-entity');
element.setAttribute('location',this.location);
//在这里,我将向'element'变量添加一些其他节点。
返回元素;
};
(功能(){
函数render(){
var el=document.createElement('div');
对于(变量i=7;i--;){
var navBtn=新导航按钮('0');
var comp=NavigatieButton.prototype.init();
el.附属儿童(公司);
}
控制台日志(el);
}
render();
})();而不是

  var comp = NavigatieButton.prototype.init();
必须使用刚创建的对象调用
.init()

  var comp = navBtn.init();
.init()
函数将在原型上找到,当以正确的方式调用时,
的值将引用您创建的
navBtn
对象。

而不是

  var comp = NavigatieButton.prototype.init();
必须使用刚创建的对象调用
.init()

  var comp = navBtn.init();

.init()
函数将在原型上找到,当以正确的方式调用时,
的值将引用您创建的
navBtn
对象。

您直接调用
NavigatieButton
构造函数的init函数,该构造函数不是新创建的对象


使用
navBtn.init()
而不是
NavigatieButton.prototype.init()

您正在直接调用
NavigatieButton
构造函数的init函数,该函数不是新创建的对象

使用
navBtn.init()
而不是
NavigatieButton.prototype.init()