1

我有一个骨干视图,它从其父视图调用 render() 返回子视图,然后将其附加到 DOM。问题是我不能跑

rivets.bind(this.$el, {user: this.user});

在子视图的初始化方法中,因为该元素尚未在 DOM 中。我宁愿不必在渲染后运行另一种方法来绑定铆钉。

可能是一个简单的问题,但有什么想法吗?

4

1 回答 1

1

我在子视图中使用了非常相似的视图模式,Rivets 0.3.8 绑定到 jQuery 对象没有问题,这些对象在绑定后一段时间才插入 DOM。

我的渲染方法看起来像这样:

function render() {
    this.setElement(_.template('<html>...</html>', {tem: plate}));
    rivets.bind(this.$el, {riv: ets});
    return this;
}

然后后来:

myView.render();
$('#myTarget').empty();
$('#myTarget').append(myView.el);
于 2012-10-18T23:06:36.597 回答