所以我正在做一个网络应用程序 这个网络应用程序有很多页面,其中一个页面有选项卡。 为了做类似的路由,我在父页面和一个具有 ng-switch 的小 div 中使用了 ng-view 指令,并根据路由参数显示不同的选项卡(与 $scope 中的 var 匹配),并且显示其中 ng-includes 中的内容,我遇到的问题是每次我更改选项卡时,页面都会重新加载。 View 相同,但选项卡不同,选项卡正在工作,但我在此页面中有一个谷歌地图,因此每次我更改选项卡时网络都会重新加载,这是一个主要的性能问题。
这是我正在做的事情的一个基本示例(我使用coffeescript和jade)
index.jade
body(ng-view)
页面.jade
section.menu.pull-left
nav
ul
li(ng-class="{active: route.tab == 'order'}")
a(href="#page/order" target="_self")
i.fa.fa-cab
small order
li(ng-class="{active: route.tab == 'favorites'}")
a(href="#page/favorites" target="_self")
i.fa.fa-star
small favorites
和选项卡
.display(ng-switch="route.tab")
.tab(ng-switch-when="order")
div(ng-include="'views/page/order.html'")
.tab(ng-switch-when="favorites")
div(ng-include="'views/page/favorites.html'")
路由文件
app.config ['$routeProvider', ($routeProvider) ->
$routeProvider
.when '/',
templateUrl : 'views/login.html'
controller : 'loginCtrl'
tab : ''
.when '/page/:tab',
templateUrl : 'views/page.html'
controller : 'pageCtrl'
]
page.jade 必须是静态的,并且选项卡必须更改。我不知道为什么这样做, Controller 基本上是空的。我不知道该怎么办!请帮忙
最佳答案
看起来像你的href's
格式不正确
尝试改变:
href="#page/order"
至
href="#/page/order"
也可能从 <a>
中删除目标标签
关于javascript - 更改路由参数时 Angular 重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31441955/