如何从主干中的视图呈现视图.js
How to render a view from a view in backbone.js
我尝试初始化视图加载,然后将事件侦听器附加到初始视图中的链接,以便当有人单击该链接时,文档正文将替换为不同的主干.js视图。
我很接近,但我不断遇到 js 错误:
Uncaught TypeError: Cannot call method 'replace' of undefined underscore-min.js:5
其次,渲染视图后,如何在 #blog 内向 #container 添加一个类?你会在小提琴中看到我已经写好了CSS和新类。
链接到小提琴
.HTML
<script type="text/template" id="index">
<a href="" id="thing">click here</a>
</script>
<script type="text/template" id="blog">
<div id="container"><p>Hello world.</p></div>
</script>
.JS
BlogView = Backbone.View.extend({
initialize: function(){},
render: function(){
var template = _.template( $("#blog").html(), {} );
this.$el.html( template );
}
});
IndexView = Backbone.View.extend({
initialize: function () {
this.render();
},
render: function () {
var template = _.template($("#index").html(), {});
this.$el.html(template);
},
events: {
"click a": "initBlogView"
},
initBlogView: function () {
blog_view.render();
return false;
}
});
var blog_view = new BlogView({ el: $("body") });
var index_view = new IndexView({
el: $("body")
});
其次,我会
我认为定位"正文"的问题在于您还覆盖了脚本模板标记。 之后,下划线找不到模板,从而导致错误。 请尝试改为定位容器。
要添加类,只需使用 this.$el.find("#container").addClass("class")
即可。
这是更新的小提琴。
相关文章:
- angular.js没有'无法在PhoneGap中处理视图标记
- backbone.js无法渲染视图
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 删除移动视图粘性js上的粘性导航栏
- Backbone.js将模型绑定到视图时出错
- 如何在渲染视图时将变量传递给Node.js中的脚本标记
- Backbone.js视图中的多个模型
- 带有jquery插件的backbone.js视图
- node.js/javascript/couchdb视图到关联数组似乎不起作用
- 使用knockout.js将数组绑定到视图模型
- 如何在主干js中解析视图中的消息
- 似乎无法将功能绑定到骨干网中的视图.js
- 嵌套依赖主干.js具有 require.js 主干的视图.js导致视图作为对象而不是函数加载
- 如何在主干中显示视图.js(路由器.js中不显示警报)
- 如何从主干中的视图呈现视图.js
- Extjs 4 -停止控制器试图加载视图js
- “this.model"不工作的点击视图.JS支柱
- MVC部分视图js文件不工作调试
- Rails3视图- JS模板目录结构