reactjs - 将 Phaser 与 React 结合使用

标签 reactjs phaser-framework 2d-games

我试图了解如何在 React 应用程序中使用 React 渲染所有 UI 元素,并使用 Phaser 渲染游戏(使用 Canvas 或 WebGL)。

一种方法是使用 React 的 componentDidMount,因此在准备好 HTML 后,我可以使用 div id 来呈现 Phaser 内容。在这种情况下,谁来渲染? Phaser 的 react ?

如果上述方法不正确,您能建议另一种方法吗?

最佳答案

Github 上有一个用于此目的的模块称为react-phaser。这是CodePen不使用任何单独的模块。

var PhaserContainer = React.createClass({

    game: null,
    ...
    componentDidMount: function(){
        this.game = new Phaser.Game(800, 400, Phaser.AUTO, "phaser-container", 
        { 
            create: this.create,
            update: this.update
        });
    },
    ...
    render: function(){
        return (
            <div className="phaserContainer" id="phaser-container">
            </div>
        );
    }
    ...
}

这不是我的 CodePen。信用归Matthias.R

关于reactjs - 将 Phaser 与 React 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48682260/

相关文章:

javascript - axios请求抛出未知错误

javascript - ReactDOM 应该从哪里导入?

javascript - 在单击时移动 Sprite 直到其被单击

javascript - 在 Phaser 3 中生成的形状上使用 .setCollideWorldBounds()

java - 在 LibGDX 中滚动 TiledMap

java - 用于制作 PC 平台游戏的 2d java 游戏引擎

javascript - 如何使用 API 响应设置 useReducer 初始状态?

javascript - 一旦元素在 Material-UI 中可见,就触发 CSS 动画

javascript - Phaser : this. 游戏在更新函数中未定义

java - 如何在连接四中添加定时器? java