Angular在改变路由参数时重新加载页面

Angular reloading page when changing route param

本文关键字:加载 新加载 改变 路由 参数 Angular      更新时间:2023-09-26

我在做一个web应用这个web应用程序有很多页面,其中一个页面有标签。为了做路由,我使用了ng-view指令的父页,并在一个小的div,有一个ng-switch,并显示不同的选项卡取决于路由参数(与$scope中的var匹配),并显示内容在ng-include里面,我遇到的问题是,每次我改变选项卡,页面重新加载。视图是相同的,但标签是不同的,标签是工作的,但我有一个谷歌地图在这个页面,所以这是一个主要的性能问题,每次我改变标签网页得到重新加载。

这是我正在做的一个基本例子(我使用coffeescript和jade)

index.jade

body(ng-view)

page.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'  
 ]

页面。Jade必须是静态的,标签必须改变。我不知道它为什么这样做,控制器基本上是空的。我不知道该怎么办!请帮助

似乎你的href's格式不正确

尝试改变:

href="#page/order"

href="#/page/order"

也可以从<a>标签中删除目标