Meteor 带路由器的流星精灵
我正在使用Meteor和Pixi.js进行一个项目, 当我尝试使用路由器时,我面临一个非常奇怪的问题 (我尝试了IronRouter和FlowRouter)和pixi画布 画布已经建成,但我无法在上面渲染任何精灵。 只有在使用route参数时才会发生这种情况,例如“/game/:id” 除非我使用了route参数,例如“/game/:id”,否则这是有效的 此外,如果我不使用route参数, 当我访问“/游戏”时,精灵出现 当我访问“/游戏”时,精灵不会出现/ 以下是meteor应用程序的最小错误代码: 任何路由器定义:Meteor 带路由器的流星精灵,meteor,iron-router,pixi.js,flow-router,Meteor,Iron Router,Pixi.js,Flow Router,我正在使用Meteor和Pixi.js进行一个项目, 当我尝试使用路由器时,我面临一个非常奇怪的问题 (我尝试了IronRouter和FlowRouter)和pixi画布 画布已经建成,但我无法在上面渲染任何精灵。 只有在使用route参数时才会发生这种情况,例如“/game/:id” 除非我使用了route参数,例如“/game/:id”,否则这是有效的 此外,如果我不使用route参数, 当我访问“/游戏”时,精灵出现 当我访问“/游戏”时,精灵不会出现/ 以下是meteor应用程序的最小错
Router.route('/room/:_id', {
action: function() {
this.render('game');
}
});
基本模板:
Html:
pixi画布将显示,但mario sprite不会显示。是否有理由将画布附加到主体而不是模板?Blaze默认安装在身体上,这可能会抹掉你的画布,结果是在你的游戏模板中放置一个容器div,并将你的画布附加到该模板中,我实际上将画布附加到模板中的一个div,并得到了相同的错误。我确实在我的帖子中使用了document.body,因为我不确定pixi用户是否会意识到blaze works,我想尊重他们的基本示例。是否有理由将画布附加到body而不是模板?Blaze默认安装在身体上,这可能会抹掉你的画布,结果是在你的游戏模板中放置一个容器div,并将你的画布附加到该模板中,我实际上将画布附加到模板中的一个div,并得到了相同的错误。我确实在我的帖子中使用了document.body,因为我不确定pixi用户是否会意识到blaze的工作,我想尊重他们的基本示例。
<template name="game"></template>
Template.game.onRendered(function () {
PIXI.loader.add("assets/mario.png")
.load(() => {
let app = new PIXI.Application();
document.body.appendChild(app.view);
let mario = new PIXI.Sprite(PIXI.loader.resources["assets/mario.png"].texture);
mario.position.set(5, 5);
mario.width = 48;
mario.height = 48;
app.stage.addChild(mario);
app.render();
});
});