문제

메뉴 레이어를 만들려고하지만 크롬 콘솔 에서이 오류가 발생합니다.

MenuLayer is not defined
.

그러나 이것은 menulayer를 정의하는 Menu.js입니다.

var MenuLayer = cc.LayerColor.extend({
    ctor : function(){
        //1. call super class's ctor function
        this._super();

        cc.associateWithNative( this, cc.LayerColor );

    },
    onEnter:function () {
        this._super();

        //2. get the singleton director
        var director = cc.Director.getInstance();
        //3. get the screen size of your game canvas
        var winsize = director.getWinSize();
        //4. calculate the center point
        var centerpos = cc.p(winsize.width / 2, winsize.height / 2);

        //5. create a background image and set it's position at the center of the screen
        //var spritebg = cc.Sprite.create(s_HelloBG);
        //spritebg.setPosition(centerpos);
        //this.addChild(spritebg);

        //6.create a menu and assign onPlay event callback to it
        cc.MenuItemFont.setFontSize(60);
        var menuItemPlay= cc.MenuItemSprite.create(
            cc.Sprite.create(s_start_n),
            cc.Sprite.create(s_start_s),
            this.onPlay, this);
        var menu = cc.Menu.create(menuItemPlay);
        menu.setPosition(centerpos);
        this.addChild(menu);
    },

    //this is the callback when the menu is clicked
    onPlay : function(){
        cc.log("==onplay clicked");
        var director = cc.Director.getInstance();
        director.replaceScene(new MainLayer());
    }
});

MenuLayer.create = function () {
    var sg = new MenuLayer();
    if (sg ) {
        return sg;
    }
    return null;
};

MenuLayer.scene = function () {
    var scene = cc.Scene.create();
    var layer = MenuLayer.create();
    scene.addChild(layer);
    return scene;
};
.

이 코드는 menu.js 및 스타터 장면을 각각 참조하는 내 코드입니다.

    engineDir:'./Platform/HTML5/cocos2d/',
    appFiles:[
        './Src/resource.js',
        './Src/MainLayer.js',
        './Src/GameOver.js',
        './Src/main.js',
        './Src/menu.js'
    ]
.


var myApp = new cocos2dApp(MenuLayer.scene);
.
도움이 되었습니까?

해결책

내가 추측하는 유일한 대답은 캐시를 비우는 것입니다. (Chrome) "Developer Tools"-> "옵션"-> "캐시 사용 비활성화"및 Dev Tools

를 닫지 않고 다시로드 페이지를 엽니 다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top