【问题标题】:Check of Meteor Template has rendered流星模板的检查已渲染
【发布时间】:2015-06-14 22:22:28
【问题描述】:

除了使用 Sessions 之外,是否有其他方法可以检查特定模板是否已呈现,即其他外部函数可以访问该模板以使用该模板?

一个很好的例子是我想使用 Blaze.renderWithData,但需要事先知道模板是可用的。

【问题讨论】:

  • 你有没有尝试过解决这个问题,也许是使用Session
  • 是的,但想知道是否有其他方法?

标签: meteor


【解决方案1】:

如果您想查看模板是否已呈现,请在onRendered 回调中放置一个标志。如果您不喜欢 Session vars,请使用响应式 var 或 dict 并在 onDestroyed 中包含逆向变量。将响应式存储在您的包对象的全局下。作为替代方案,如果您知道它可能被渲染到哪里,您可以在它应该出现的元素上使用Blaze.getView,如果它返回,您知道您拥有它,例如Blaze.getView($('.foo')[0])

还可以考虑问问自己为什么不能使用空格键或将渲染直接嵌入到onRendered 回调中。使用Blaze.renderWithData 相当少见。

【讨论】:

  • 之所以使用 Blaze.renderWithData 是因为我有多个屏幕区域使用这个模板。模板的第一次使用可以在页面加载时呈现,但是,同一模板的后续使用是用户启动的。
猜你喜欢
  • 1970-01-01
  • 2012-06-16
  • 1970-01-01
  • 2013-11-16
  • 1970-01-01
  • 2017-04-10
  • 2017-11-30
  • 2014-08-02
  • 2013-09-26
相关资源
最近更新 更多