Не удается найти проблему, из-за которой переменная не определена («Не удается прочитать свойство« toString »из неопределенного) - PullRequest
0 голосов
/ 13 марта 2019

Я пытаюсь закодировать игру на ставки / гонки в javascript и продолжаю сталкиваться с этой ошибкой, которую не могу понять.Все это происходит в моем классе ChooseScreen:

constructor(assetManager, stage) {
    super(assetManager, stage);

    this._wagerText = new createjs.BitmapText("", assetManager.getSpriteSheet("uiAssets"));
    this._wagerText.text = this._wagerAmount.toString();
    this._wagerText.letterSpacing = 3;
    this._wagerText.x = 100;
    this._wagerText.y = 20;
    this._screen.addChild(this._wagerText);

    this._wagerAmount=0;

    // custom event
    this._eventScreenComplete = new createjs.Event("contentFinished");
    this._eventScreenPrevious = new createjs.Event("contentBack");

    // add background sprite to container
    let background = assetManager.getSprite("uiAssets");
    background.gotoAndStop("chooseScreen");
    this._screen.addChildAt(background, 0);

    let btn1 = assetManager.getSprite("uiAssets");
    btn1.gotoAndStop("btn1_up");
    btn1.x = 120;
    btn1.y = 110;

    let hitAreaSprite = assetManager.getSprite("uiAssets");
    btn1.buttonHelper = new createjs.ButtonHelper(btn1, 
                                        "btn1_up","btn1_over","btn1_over",
                                        false, hitAreaSprite, "hitArea");
    btn1.on("click", this._onNext, this);
    this._screen.addChild(btn1);

    let btn2 = assetManager.getSprite("uiAssets");
    btn2.gotoAndStop("btn2_up");
    btn2.x = 150;
    btn2.y = 110;

    btn2.buttonHelper = new createjs.ButtonHelper(btn2, 
                                        "btn2_up","btn2_over","btn2_over",
                                        false, hitAreaSprite, "hitArea");
    btn2.on("click", this._onNext, this);
    this._screen.addChild(btn2);

    let btn3 = assetManager.getSprite("uiAssets");
    btn3.gotoAndStop("btn3_up");
    btn3.x = 180;
    btn3.y = 110;

    btn3.buttonHelper = new createjs.ButtonHelper(btn3, 
                                        "btn3_up","btn3_over","btn3_over",
                                        false, hitAreaSprite, "hitArea");
    btn3.on("click", this._onNext, this);
    this._screen.addChild(btn3);

    let btn4 = assetManager.getSprite("uiAssets");
    btn4.gotoAndStop("btn4_up");
    btn4.x = 210;
    btn4.y = 110;

    btn4.buttonHelper = new createjs.ButtonHelper(btn4, 
                                        "btn4_up","btn4_over","btn4_over",
                                        false, hitAreaSprite, "hitArea");
    btn4.on("click", this._onNext, this);
    this._screen.addChild(btn4);
}
update() {
    this._wagerText.text = this._wagerAmount.toString();
}

}

Я получаю

Uncaught TypeError: Невозможно прочитать свойство toString из undefined в ChooseScreen.js: 78,

, предполагая, что this._wagerText - это undefined, но я не могу понять, почему, когда я смотрю на API, он показывает, что он написан так же, как и я,У кого-нибудь есть предложения?Очень надеюсь, что это не опечатка, к которой я тупо слеп, извиняюсь, если да.

...