-1

我试图用它Meteor.renderList来呈现某种聊天消息。我使用Template.foo.rendered回调方法将 domFragment 添加到列表中。

Template.foo.rendered = ->
    list = this.find "ul"
    list.appendChild fragmet

如果我将列表放在<template name="foo">Meteor 中,则会在无限循环/递归中引发错误。

Uncaught Error: LiveRange start and end must have a parent 

我必须使用另一个没有直接连接到foo. 从foo#rendered回调中附加列表而不是按预期工作。

Template.foo.rendered = ->
    document.getElementById("foo").appendChild fragmet # element with id foo not part of template foo

我认为,模板使用的反应式上下文存在问题,并且renderList?任何人都知道这是一个错误还是预期的行为?我查看了消息来源,但很快就迷失了;)

谢谢!

4

1 回答 1

0

这是有道理的,因为您在呈现模板时将元素附加到模板。因此,每次渲染模板时,它都会将一个元素附加到自身,导致它无限地重新渲染自己。

您确定要呈现列表而不是在模板本身中Meteor.renderList使用迭代器吗?{{each}}

于 2012-12-22T13:40:47.197 回答