ngRoute:URL更改,但视图保持不变

时间:2015-09-30 17:58:27

标签: javascript angularjs ngroute

我真的不知道我做错了什么,因为网址发生了变化,但视图保持不变。

app.js

var app = angular.module('app', [
'ngRoute',
'ui.bootstrap',
'ui.bootstrap-slider',
'angularFileUpload',
'ngTouch',
'ngAnimate',
'r'
]);

app.config(['$routeProvider', function ($routeProvider) {
$routeProvider
    .when('/data', {
        templateUrl: 'html/data/data.html',
        controller: 'RController'
    })
    .otherwise({
        templateUrl: 'html/start/start.html'
    });
}]);

index.jade

doctype html
html(ng-app='app')
meta(charset='utf-8')
head
    title i-CoDa
    link(rel='shortcut icon', href='./img/icon.ico')
    link(rel="stylesheet", href="./css/main.css")
body(ng-controller='RController')
    div#navigation.navbar.navbar-default.navbar-fixed-top(role='navigation')
        div.container
            div.navbar-header
                button.navbar-toggle.navbar-collapse(aria-expanded='false')
                    span.sr-only Toggle navigation
                    span.icon-bar
                    span.icon-bar
                    span.icon-bar
                a.navbar-brand(href='./index.html')
                    img#logo(src="./img/logo.svg", alt="i-CoDa Logo")
            div.collapse.navbar-collapse.navbar-right
                ng-include(src="'./html/navbar/navbar.html'")
    div#main
        div(ng-view)
    footer.container.col-lg-12

    script(src="./js/dependencies.js")
    script(src="./js/bundle.js")

navbar.jade

ul.nav.navbar-nav
 li.active
    a(href='#/start.html') Start Page
 li.active
    a(href='#/data.html') Data

我的项目结构如下:

|
|_server.R
|_www
  |___html
  |___css
  |___js
  |___index.html

我也查看了类似的帖子并尝试了一切,但它没有用。 有人能给我一个暗示吗?

1 个答案:

答案 0 :(得分:0)

你这样做是错误的。您在身体上设置的RController将显示身体内的所有内容,无论您将建立什么路由器,而应仅为/data路由设置。

将其从正文中删除,或者将其设置为另一个控制器,例如MasterController(您还必须创建它)。

然后你创建一个路由/start(它应该有控制器+视图类似于你当前拥有的/data路由)作为默认选项,然后定义其他选项,如下所示

  

.otherwise({redirectTo:'/ start'});