流星:移动到Iron:Router后,图像和文本不会加载



当数据在模板中时,我的网站工作正常,但是一旦我尝试使用iron:router路由到它,背景图像和大多数剩余内容就不再出现。(某些内容仍然与工作 css、JS 组件一起出现,所以我知道这些文件正在被读取。此外,在检查元素时,所有文本、图像在代码中仍然可见,但在网站上不可见。

这工作正常(索引.html):

<body>
  {{>home}}
</body>

这添加了另一个 {{>home}} 部分,但新部分在渲染时遇到问题,如上所述(router.js):

Router.map(function() {
  this.route('home', {path: '/'});
});

你在最新的iron:router吗?我遇到了类似的问题,并在此拉取请求中询问了它:https://github.com/iron-meteor/iron-router/issues/1051最新响应表明现在应该修复此问题!

您遵循了错误的教程:(有很多教程和文章可以像您一样解释如何定义路线。

但是,铁路由器项目页面介绍了如何以不同的方式定义路由。有关路由的更多信息,请查看这篇关于铁路由器的文章。

修复:问题不在于 iron:router,而在于尚未将所有元素加载到页面中。当我直接调用模板时,Document.ready() 工作正常。

问题是当 iron:router 加载模板时,新的页面元素是在调用 JS 文件后加载的(JS 对图像/文本进行动画处理)。

解决方案:使用渲染而不是文档就绪: Template.MyTemplate.renderd = function(){ }

最新更新