我创建了一个简单的主干应用程序,效果很好。现在我需要解决一个问题,我遇到了麻烦。所以我寻求建议。
我需要在每个用户/组的基础上表示我的模型/集合只读或可编辑。
我最初的想法是,创建两个模板(阅读和编辑)及其各自的视图。(伪代码):
var appRouter = Backbone.Router.extend({
routes: {
'' : 'schedule',
}
schedule: function() {
this.collection = new Collection();
this.collection.fetch({success:function(resp) {
if (resp.group == 'allowedToEdit')
myview = new editView(this.collection);
else
myview = new readView(this.collection);
}});
});
这种方法最终使我不得不复制模板:
<script type="text/template" id="edit-template">
<div class="myclass">
<input class="fn" type="text" value="<%= (fn) != '' ? fn : 'default' %>">
</div>
</script>
<script type="text/template" id="static-template">
<div class="myclass">
<div class="fn"><%= fn %></div>
</div>
</script>
使用内联 javascript 来选择input
ordiv
标记会更好,还是有一个我没有想到的更好的解决方案?