我正在 Phaser 中构建游戏并使用 Phaser Isometric 插件。我也在使用 grunt/bower/yeoman。我已获取 Isometric 插件源 .js 文件并将其包含在本地,因为 Bower 不会安装它。
无论如何,每当我运行 grunt
时,我都会收到错误消息,指出 Isometric 插件源文件和我的主游戏文件中均未定义 Phaser。我已经通过 Bower 安装了 Phaser,它显示在 bower_components
目录中,并且当我运行 gruntserve
时,它显示在我的主 HTML 文档中。它包含在 HTML 文件和依赖项中,但 grunt 说 Phaser 尚未定义。因此,Phaser Isometric 插件无法使用,因为它有太多“Phaser”未定义
错误,导致它停止扫描文件,从而导致页面崩溃。
为什么会出现此错误?我该如何修复它?
最佳答案
自从我评论我的解决方案以来已经过去了近两年(到今天),但最终做出回应是值得的。
正如我在上面的评论中提到的,我们使用 JSHint 来检查我们的代码。我们不小心将 node_modules
包含在要检查的路径中,因此 Phaser 内部的 undefined variable 抛出了数百个错误,迫使 JSHint 和 Grunt 停止扫描。忽略 node_modules
是一个简单的解决方案。
此后我们已转向不同的构建工具,但如果有人使用类似的 linting 设置,则可能会再次出现此错误。
关于javascript - 咕噜声 : Phaser isn't Defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32979593/