Ich bin neu in cocos2d-js, und ich möchte meinen Code vereinfachen, aber ich habe ein Problem hier hier den Codethis.addChild ist keine Funktion cocos2d-js
var GameLayerEasy = cc.Layer.extend({
ctor:function() {
// 1. super init first
this._super();
this.addBG4();
},
addBG4: function(){
var size = cc.director.getWinSize();
var sprite = new cc.Sprite.create(res.BG4_png);
sprite.setPosition(size.width/2, size.height/2);
this.addChild(sprite, 0);
}
});
es ist in Ordnung mit diesem Code, aber ich habe viele GameLayer
Instanzen und Verwendung addBG4
, dann ist es nicht effizient, wenn ich addBG4
Funktion wieder geben jede GameLayer
so ändern ich versuche, den Code wie dieser
var GameLayerEasy = cc.Layer.extend({
ctor:function() {
// 1. super init first
this._super();
addBG4();
},
});
function addBG4(){
var size = cc.director.getWinSize();
var sprite = new cc.Sprite.create(res.BG4_png);
sprite.setPosition(size.width/2, size.height/2);
this.addChild(sprite,0);
}
aber ich habe diesen Fehler this.addChild is not a function
kann mir jemand mit dem Code helfen, und bitte sagen Sie mir, was mit diesem falsch, danke
Dies ist nur eine JavaScript-Frage. Nichts cocos-bezogen. Im ersten Beispiel steht "dies" für die GameLayerEasy-Instanz, während im zweiten Beispiel "dies" global ist, d. H. Ein Fensterobjekt. –
@ РоманГуйван danke für die Erklärung. aber ich bin immer noch verwirrt über diese – Pentolan