我需要使用模型数据来渲染这个模板,所以我执行以下操作: render: function () { var tem-6ren">
gpt4 book ai didi

backbone.js - 是否可以在模板中传递 cid 字段?

转载 作者:行者123 更新时间:2023-12-02 07:29:51 24 4
gpt4 key购买 nike

我有一个 View ,其模板如下所示:

<script type="text/template" id="template">
<div id="<%=cid=>"></div>
<label><%= label %></label>
<input type="text" id="search_input" />
<input type="button" id="search_button" value="Search" />
</script>

我需要使用模型数据来渲染这个模板,所以我执行以下操作:

render: function () {
var template = _.template( $("#template").html(), this.model.toJSON());
this.$el.html( template );
return this;
}

但不幸的是 this.model.toJSON() 没有将 cid (clientId) 传递给我的模板。你能解释一下我如何才能在我的模板中访问 c​​id 以及你如何处理这件事吗?

最佳答案

toJSON 只是克隆 attributes 数组。这就是没有 cid 的原因。如果您恰好需要模型中的 cid,您可以将其混合在模板对象中:

var templateData = _.extend(this.model.toJSON(), { cid: this.model.cid });
var template = _.template( $("#template").html(), templateData);

但是如果您的div 只需要一个唯一的ID - 我建议使用_.uniqueId()

关于backbone.js - 是否可以在模板中传递 cid 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23060631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com