我正在Phaser中构建游戏并使用Phaser Isometric插件。我也在使用grunt / bower / yeoman。我已经把Isometric插件源.js文件包含在本地,因为bower不会安装它。
无论如何,每当我运行grunt
时,我都会错误地说Phaser没有在Isometric插件源文件和我的主游戏文件中定义。我已经通过bower安装了Phaser,它出现在bower_components
目录中,当我运行grunt serve
时,它出现在我的主HTML文档中。它包含在HTML文件和依赖项中,但是grunt说没有定义Phaser。因此,Phaser Isometric插件无法使用,因为它有很多'Phaser' is not defined
错误,因此它会停止扫描文件,从而导致页面崩溃。
为什么会出现此错误,我该怎么做才能修复它?
答案 0 :(得分:1)
自从我评论我的解决方案以来已经将近两年(到今天),但最终还是值得回应。
正如我在上面的评论中提到的,我们使用JSHint来代替我们的代码。我们不小心将node_modules
包含在要绘制的路径中,因此Phaser本身内部未定义的变量 会抛出数百个错误,迫使JSHint和Grunt停止扫描。忽略node_modules
是一个简单的解决方案。
我们已经转移到不同的构建工具,但如果有人使用类似的linting设置,则此错误可能会再次出现。