2017-01-04 148 views
0

为什么这段代码无效?简单的ngRoute不工作

angular.module('routers', ['ngRoute']) 

.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) { 

    console.log('1. routes loaded!'); 

    $routeProvider 
    .when('/', { 
     controller: 'HomeController' 
    }) 

    .when('/about', { 
     controller: 'AboutController' 
    }); 

    $locationProvider.html5Mode(true); 
}]) 

.controller('HomeController', function() { 
    console.log('2. HomeController loaded!'); 
}) 

.controller('AboutController', function() { 
    console.log('3. AboutController loaded!'); 
}); 

当页面加载时,1.路由加载!日志显示完美,但是2. HomeController ...未记录日志。

当我输入本地主机:8000 /在我的浏览约,我收到以下回报:

不能得到/约

这是什么简单的代码不工作?

+0

这ngRoute不是如何工作的。 ngRoute没在看你的地址栏。 ngRoute只能与$ location服务协同工作,例如$ location.path( “/约”); – RamblinRose

+0

添加模板 '$ routeProvider.when( '/',{ 控制器: 'HomeController中', 模板:'

Home Loaded
}' – Nilesh

回答

0

这里有变化,

var app = angular.module("app", ['ngRoute']); 
app.config(['$routeProvider', function($routeProvider) { 
    $routeProvider. 
    when('/home', { 
    templateUrl: 'home.html', 
    controller: 'HomeController', 
    controllerAs: 'homeCtrl' 
    }). 
    when('/about', { 
    templateUrl: 'about.html', 
    controller: 'AboutController', 
    controllerAs: 'AboutCtrl' 
    }); 
}]) 

app.controller('HomeController', function() { 
    console.log('2. HomeController loaded!'); 
}) 

app.controller('AboutController', function() { 
    console.log('3. AboutController loaded!'); 
}); 

DEMO

+0

OP指出,他预计在*浏览器*进入航线路径和使其显示角度资源,这是如何提供理想的结果? – RamblinRose