我再次需要建议,在我的项目中,我使用NodeJS,Webpack和babel-loader,我将它分成不同的文件。
我一直收到错误:
ReferenceError: PlayerManager is not defined
PlayerManager是我在主文件中导入的类:
import PlayerManager from './game/modules/PlayerManager';
import Player from './game/modules/Player';
import Game from './game/modules/Game';
如果我在firefox的调试器中检查我的编译代码,这是奇怪的原因,这些类都在我的bundle文件中。
这是触发此错误的代码行:
this.playerManager = new PlayerManager(this.ctx);
这是我之前导入的Class文件的构造函数(见上文)
export default class Game {
constructor() {
this.canvas = document.getElementById("gameCanvas");
this.ctx = this.canvas.getContext("2d");
this.w = window.innerWidth;
this.h = window.innerHeight;
this.frames = 60;
this.resize();
this.players = {};
this.playerManager = new PlayerManager(this.ctx);
....
....
现在我调用new Game()
并触发错误...
什么可能导致错误?
在另一个构造函数中使用new Class
是错误的吗?
答案 0 :(得分:1)
导入仅在该特定文件中可用。
您需要将PlayerManager
导入到定义了Game
类的文件中。