Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates 主干路由器停止传播_Templates_Backbone.js_Backbone Events_Backbone Routing - Fatal编程技术网

Templates 主干路由器停止传播

Templates 主干路由器停止传播,templates,backbone.js,backbone-events,backbone-routing,Templates,Backbone.js,Backbone Events,Backbone Routing,这是一个主干前端 我在index.html上有这个模板 <script id="sportTemplate" type="text/template"> <ul> <li><%%= title %> <a href="#sports/<%%=id%>/events" class="events">Life events</a> </li> </ul> <

这是一个主干前端

我在index.html上有这个模板

<script id="sportTemplate" type="text/template">
  <ul>
    <li><%%= title %>
    <a href="#sports/<%%=id%>/events" class="events">Life events</a>
    </li>
  </ul>
</script>
有没有办法停止传播,让url只显示
http://localhost:3000
而不是
http://localhost:3000/#sports/100/events


谢谢你

在主干应用程序中处理链接的更好方法是监听点击事件,尤其是当你不想更改url时

var User=Backbone.Model.extend();
var Users=Backbone.Collection.extend({
型号:用户,
网址:'http://jsonplaceholder.typicode.com/users'
});
var UserView=Backbone.View.extend({
标记名:“li”,
模板:35;.template($('#userTemplate').html()),
初始化:函数(){
_.bindAll(这是“showPosts”);
this.posts=新的posts([]{
网址:'http://jsonplaceholder.typicode.com/users/“+this.model.id+”/posts”
});
},
活动:{
“单击a.posts”:“openPosts”
},
render:function(){
this.el.html(this.template(this.model.toJSON());
归还这个;
},
openPosts:函数(evt){
evt.preventDefault();
this.posts.fetch().done(this.showPosts);
},
showPosts:function(){
userPostsView.showPosts(this.posts,this.model);
}
});
var UsersView=Backbone.View.extend({
标记名:“ul”,
初始化:函数(){
this.listenTo(this.collection,'add',this.addOne);
},
addOne:函数(用户){
var userView=newuserview({model:user});
userView.render().$el.appendTo(this.el);
}
});
var Post=Backbone.Model.extend();
var Posts=Backbone.Collection.extend({
初始化:函数(m,o){
this.url=o.url;
}
});
var PostView=Backbone.View.extend({
模板:35;.template($('#postTemplate').html()),
render:function(){
this.el.html(this.template(this.model.toJSON());
归还这个;
}
});
var PostsView=Backbone.View.extend({
初始化:函数(){
_.bindAll(这是“addOne”);
this.listenTo(this.collection'add',this.addOne);
},
活动:{
“单击。关闭”:“隐藏”
},
render:function(){
this.collection.each(this.addOne);
$('').prependTo(this.el);
$('Posts by'+this.model.get('name')+'.prependTo(this.el));
归还这个;
},
地址:功能(post){
var postView=new postView({model:post});
postView.render().$el.appendTo(this.el);
},
隐藏:函数(){
userPostsView.hide();
}
});
var UserPostsView=Backbone.View.extend({
初始化:函数(){
_.bindAll(这是“隐藏”、“移除PostsView”);
},
showPosts:功能(帖子、用户){
此.$el.removeClass('hidden');
如果(this.postsView)this.postsView.remove();
this.postsView=newpostsview({collection:posts,model:user});
this.postsView.render().$el.appendTo(this.el);
},
隐藏:函数(){
此.$el.addClass('hidden');
this.setTimeout(this,removePostsView,500);
},
removePostsView:function(){
this.postsView.remove();
}
});
var userPostsView=newuserpostsview({el:'#userPosts'});
var users=新用户();
var usersView=newusersview({collection:users});
usersView.render().$el.appendTo(document.body);
users.fetch()
#用户帖子{
位置:绝对位置;
背景:rgba(255255,0.95);
最小高度:20px;
左:10px;
右:10px;
边框:1px实心rgba(0,0,0,0.1);
边界半径:2px;
填充物:5px;
过渡:0.5s;
能见度:可见;
不透明度:1;
}
#userPosts.hidden{
可见性:隐藏;
不透明度:0;
}
#userPosts>div>div{
显示:内联块;
最大宽度:150px;
最大高度:150像素;
垂直对齐:顶部;
溢出:隐藏;
利润率:10px;
字体大小:12px;
}
#用户帖子{
边际:0px;
颜色:#ccc;
}
#用户帖子,关闭{
浮动:对;
}
h4{
保证金:0;
}
h3{
利润率:10px;
}


在主干应用程序中处理链接的更好方法是侦听单击事件,尤其是当您不希望url更改时

var User=Backbone.Model.extend();
var Users=Backbone.Collection.extend({
型号:用户,
网址:'http://jsonplaceholder.typicode.com/users'
});
var UserView=Backbone.View.extend({
标记名:“li”,
模板:35;.template($('#userTemplate').html()),
初始化:函数(){
_.bindAll(这是“showPosts”);
this.posts=新的posts([]{
网址:'http://jsonplaceholder.typicode.com/users/“+this.model.id+”/posts”
});
},
活动:{
“单击a.posts”:“openPosts”
},
render:function(){
this.el.html(this.template(this.model.toJSON());
归还这个;
},
openPosts:函数(evt){
evt.preventDefault();
this.posts.fetch().done(this.showPosts);
},
showPosts:function(){
userPostsView.showPosts(this.posts,this.model);
}
});
var UsersView=Backbone.View.extend({
标记名:“ul”,
初始化:函数(){
this.listenTo(this.collection,'add',this.addOne);
},
addOne:函数(用户){
var userView=newuserview({model:user});
userView.render().$el.appendTo(this.el);
}
});
var Post=Backbone.Model.extend();
var Posts=Backbone.Collection.extend({
初始化:函数(m,o){
this.url=o.url;
}
});
var PostView=Backbone.View.extend({
模板:35;.template($('#postTemplate').html()),
render:function(){
this.el.html(this.template(this.model.toJSON());
归还这个;
}
});
var PostsView=Backbone.View.extend({
初始化:函数(){
_.bindAll(这是“addOne”);
this.listenTo(this.collection'add',this.addOne);
},
活动:{
“单击。关闭”:“隐藏”
},
render:function(){
this.collection.each(this.addOne);
$('').prependTo(this.el);
$('Posts by'+this.model.get('name')+'.prependTo(this.el));
归还这个;
},
地址:功能(post){
var postView=new postView({model:post});
postView.render().$el.appendTo(this.el);
},
隐藏:函数(){
userPostsView.hide();
}
});
var UserPostsView=Backbone.View.extend({
伊尼蒂
var appRoutes = Backbone.Router.extend({
  routes: {
   "sports/:id/events": "getEvents",
  },
(...)
});