求助:JavaScript中用独立类绘制游戏Paddle(矩形)失败
挡板无法显示的问题排查与修复
核心问题及修复步骤:
ES模块未启用
你的script.js使用了import语法导入Paddle类,但HTML中的<script>标签没有声明为模块类型,浏览器会忽略模块语法,导致Paddle类从未被加载。
修改HTML中的script标签:<script type="module" src="script.js"></script>Canvas属性单位错误
Canvas标签的width和height属性是纯数值属性,不需要添加px单位,虽然部分浏览器能兼容错误写法,但规范写法应为:<canvas width="800" height="600"></canvas>可选:避免颜色冲突
Canvas默认填充色为黑色,如果你的页面背景也是黑色,挡板会和背景融为一体无法分辨。可以在Paddle的draw方法中显式设置填充色:draw(ctx) { ctx.fillStyle = '#2ecc71'; // 替换为你需要的颜色 ctx.fillRect(this.position.x, this.position.y, this.width, this.height); }
验证修改
完成以上修改后,浏览器会正确加载Paddle模块,挡板就能在Canvas底部居中显示了。
内容的提问来源于stack exchange,提问作者Ethan Suwan
相关产品推荐
相关产品推荐

