我有这个JSON: (对我来说看起来不好,但我无法修改它)
{
"content": [{
"block": {
"params": "{\u0022slider\u0022:\u00221\u0022}",
},
}],
}
然后我在我的underscore.js模板中执行了此操作:
<% _.each(content, function(item){ %>
<li>
<%=item.block.params %>
</li>
<% }); %>
它打印一个字符串&#34; {slider:1}&#34; 如何直接在模板中将此字符串转换为变量?
如果无法完成,如何使用CompositeView和ItemView从Marionette完成。
这是我的代码:
MarionetteApp.module("WsApp.List", function(List, MarionetteApp, Backbone, Marionette, $, _) {
List.Wss = Marionette.ItemView.extend({
tagName: "div",
template: "#ws-list-item",
});
List.Ws = Marionette.CompositeView.extend({
tagName: "div",
className: "item",
template: "#ws-list",
childView: List.Wss,
childViewContainer: ".inner-content",
});
});
由于
找到解决方案: 我必须用脊椎映射响应,也适用于Marionette Serialized数据功能 谢谢大家
Entities.WsCollection = Backbone.Collection.extend({
url: function() {
return "/api.php/posts";
},
model: Entities.Ws,
parse: function(response){
var items = _.map(response.content, function (item, index) {
return {
block: item['block'],
params:JSON.parse(item['block']['params']),
};
});
return items;
},
});