我有一个如下所示的for循环:
function activate () {
...some code
..here we know what 'this' is
if( i > 0...) {
function setNodeInvisible(ode) {
for (var i = 0; i < node.children.length; i++) {
if (node.children[i].isMesh) {
this._view.setVisibility(node, false, false);
}
}
}
}
}
但它不知道这是什么。
除了这个for循环我的&#39;这个&#39;等于视口。我用得很好。
这里也不知道&#39;这个&#39;是:
function iterateP (parent) {
this._view.setVisibility(parent, true, false);
}
我能得到这些地方吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
看起来像是设计问题,但没有足够的信息来帮助解决这个问题。在此期间,您可以使用.call()
在this
来电中使用当前setVisibility
值。
this._view.setVisibility.call(this, node, false, false);
原始调用的性质是this
被隐式设置为_view
对象,因为您从该对象调用了setVisibility
。换句话说,方法左侧的对象变为this
的值。
使用.call
可以手动将被调用函数中this
的值设置为您想要的任何值。在这种情况下,我们通过将其作为第一个参数传递来使用当前的this
值。