- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
困境:
是否可以仅在模板完全呈现后才触发函数?
我有一个消息列表,看起来与此类似
<template name="messages">
<div id="messages">
<span class="message">{{this.message}}</span>
</div>
</template>
每次向 DOM 中插入一条新消息时,我想知道消息的文本是否包含用户名。
下面的代码片段运行了多次,其中它应该只运行一次。
Template.messages.rendered = function() {
var username = Meteor.user().services.twitter.screenName;
$("#messages").bind("DOMSubtreeModified", function() {
var lastmessage = $('.message').last().text();
if (lastmessage.indexOf(username) > -1) {
//Do something
}
}
}
通过创建和更改模板以包含单个消息来交换呈现,使该函数为每条新消息运行一次。这意味着它为 lastmessage 变量取倒数第二个值:
Template.message.created = function() {
var username = Meteor.user().services.twitter.screenName;
var lastmessage = $('.message').last().text();//this is not the last message
if (lastmessage.indexOf(username) > -1) {
//Do something
}
}
最佳答案
老实说,你不能在“渲染”中做这样的事情。或者,您可以在将额外内容渲染到 DOM 中之后加入一些回调。
此外,您可以使用 self.autorun(() => { if(self.alreadyRun) return; ... })
和 self.alreadyRun = new ReactiveVar(false)
.
只是猜测!
var self = this;
self.alreadyRun = false;
if(self.alreadyRun){
self.alreadyRun = true;
// run once code here
}
关于javascript - meteor :oncreated 与 onrendered,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29284222/
我有以下代码来截取“目标”部门的屏幕截图。我在一个网站上找到了这个。但我不知道“onrendered:function() ”是如何工作的。我想问一下“onrendered”是如何使用的?如果我不添加
经过几个小时的实验和阅读,我仍然不明白为什么myTemplate.onRendered(function() {...})只调用一次。 根据您阅读的位置,您会获得不同的信息,但显然每次内部 HTML
我有一个自定义控件,用于执行动态数据呈现。此控件包含一组 DataPoint 对象,每个 DataPoint 都根据其位置 在控件中呈现(这些点在 OnRender 方法)。 自定义控件包含许多影响呈
截至最近, meteor 的所有文档都指出 onRendered是一种在模板完成渲染时获取回调的新方法。和 rendered只是为了向后兼容。 但是,这似乎对我不起作用。 onRendered永远不会
我有一个自定义面板,它实现了其子项的良好自定义布局。我想向面板添加一些额外的图形,因此覆盖 OnRender 以添加额外的矩形等。它工作得很好,除了 OnRender 似乎只添加到背景。有没有办法让
我想使用 OnRender 方法在文本框中绘制下划线,但该线绘制在文本框后面。文本框是不透明的,因此看不到下划线。如何在文本框上方绘制内容? protected override void OnRen
这是我的代码, var pdf = function() { console.log(12); var form = $('.container');
我有一个自定义控件 MyControl,它继承自 Canvas,并且在 OnRender-Method 中有自己的逻辑。它应该将一些矩形和文本绘制到绘图上下文中。 public class MyCon
我想在 twitter-bootstrap 的日期时间选择器中禁用过去的日期。例如,用户不能选择当前日期之前的日期。我编写代码 $(function() { var now = new Da
我有一个 iron-router 路由: Router.route('/profiel/bewerken', { subscriptions: function () {
我正在使用 ionic 框架包,并且我有一个侧边栏类。有一个名为 ionSideMenu.snapper 的类,查看源代码,该类是在呈现 ionSideMenuContainer 模板时定义的,因此我
在 Meteor 模板中使用 JQuery 插件时遇到问题。我试过this插件。 // A bunch of items var options = {
我将 PhaserJS 与 MeteorJS 结合起来,我担心 onRendered 回调中会包含大量代码。 为了简单和组织,我想将许多函数拆分到几个不同的文件中。 但是,我需要避免失去范围。如何将一
我想动态地绘制一些东西。以下代码显示了我的 OnRender。我在程序中需要它的地方设置 DrawItem。但是,当我调用 DrawItem =5; 时,我必须调用什么,以便调用 OnRender?
我在 .NET 3.5 中使用 Adorner,我可以通过覆盖 OnRender 进行绘制,但我需要能够重绘装饰器以更改其外观。 本质上,我正在寻找一种方法来清除绘图上下文并再次调用 OnRender
我有一个用于更新特定项目数据的 Iron-router 路由: Router.route('/project/:key/update', { ... }); 每次用户导航到“编辑项目页面”时,我都
父模板onRendered函数在子模板之前调用。如何在子模板渲染后执行父模板函数。 {{#each object}} {{> child}} {{/each}} 现在我需要执行一些
我正在尝试在我的meteor应用程序中使用chartist.js。我将其代码放在 Template.reportPage.onRendered() 中,以便在插入模板 DOM 后生成条形图。我尝试添加
我画了一些椭圆并将它们添加到网格中。 然后我想为每个 Ellipse 添加一些 FormattedText。我可以通过获取椭圆的 RectangleBounds 来做到这一点。 但是下面这个例子: h
我有一个自定义的 TextBox,它覆盖了 OnRender 方法。不幸的是,当我向网格添加超过 143-145 个文本框时,OnRender 无法正常工作。 这是带有 160 个文本框的窗口在 wp
我是一名优秀的程序员,十分优秀!