我是一个相对较新的JS开发人员,如果你甚至可以打电话给我,我正在努力学习Phaser框架。无论如何,我有大多数人称之为'基本Phaser设置',但是当我在浏览器(Chrome)中运行我的程序时,控制台会在第1行引发错误,Uncaught ReferenceError: Phaser is not defined
,这是我创建Phaser游戏的地方'实例。这可以防止我的主代码运行,这使得背景tileSprite每帧向上滚动2个像素我正在观看教程视频,我试图模仿视频制作者的代码但我的代码仍然无法运行。如果有人能帮助我并告诉我出了什么问题,我将非常感激。谢谢!
这是我的HTML:
<!DOCTYPE html>
<html>
<head>
<title>Js Scroller</title
<script type="text/javascript" src='phaser.min.js'></script>
<script type="text/javascript" src='scrolling.js'></script>
</head>
<body>
<style>
</style>
</body>
</html>
这是我的JavaScript:
var game = new Phaser.Game(800,600,Phaser.CANVAS,'gameDiv');
var starfield;
var mainState = {
preload: function() {
game.load.image('starfield', '/Users/wyatthume/Desktop/starfield.png');
},
create: function() {
starfield = game.add.tileSprite(0,0,800,600, 'starfield');
},
update: function() {
starfield.tilePosition.y += 2;
}
}
game.state.add('mainState', mainState);
game.state.start(mainState);
答案 0 :(得分:1)
确保可以根据index.html的位置解析Phaser的路径。
在这种情况下,如果您的index.html位于/home/foo/Web/index.html中,请确保文件/home/foo/Web/phaser.min.js存在。
答案 1 :(得分:0)
这是一个非常古老的话题,但是当它出现在Google的第一页上并且没有答案时,我会回答。 :)
Phaser未定义,因为请求者直接打开了HTML文件,因此,移相器路径被错误地读取。每当您使用网络服务器时,请确保正确调用它。
您的浏览器应显示
http://localhost/phaser3-tutorial-src/part3.html
(或与此类似的内容)但是
我希望这会对外面的人有所帮助!祝您相位愉快。