javascript - 模板更新的 meteor react 功能

标签 javascript meteor

我想在 Meteor.js 中解决以下问题:

我有一个 HTML 元素,只有在用户登录时才会出现在模板中: {{#if currentUser}} <input ...> {{/if}} .出现 HTML 元素后,我需要对其执行 JS 命令。因此,我需要某种在模板更新后发生的回调。如何实现?

在这种情况下,我所知道的响应式(Reactive)数据源都无法解决问题,例如 Meteor.user() source 在更新模板之前触发依赖项。另见我之前的问题 here .

最佳答案

重构您的模板代码,将 {{#if}} block 助手的内容放入子模板中,这将触发它自己的 onRendered 生命周期事件只有当两个条件都满足时,隐含的新 HTML 内容才会插入到 DOM 中。

HTML

<template name="parentTemplate>
  {{#if currentUser}}
    {{> childTemplate}}
  {{/if}}
</template>

<template name="childTemplate">
  {{! whatever}}
</template>

JS

Template.childTemplate.onRendered(function(){
  // here you go
});

关于javascript - 模板更新的 meteor react 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29722721/

相关文章:

javascript - 如何绑定(bind)按钮(默认、悬停、事件状态)以交换 div 内容

javascript - 无论速度和兼容性如何,为什么不只使用类,而不要在HTML/CSS中使用ID?

javascript - Meteor如何获取所有用户

Python 请求和 Meteor/MongoDB collectionapi 更新不起作用

Meteor - 了解模板 'rendered' 调用

javascript - 使 Meteor 方法调用在客户端同步

javascript - Chrome 扩展 : create tab then inject content script into it

javascript - 动画属性启动时 ReactNative ActivityIndi​​cator 不显示 false

javascript - 在 JavaScript 中获取今天的从 - 到时间戳

javascript - 什么时候使用 setTimeout 与 Cron 比较合适?