模板的angular度路线

我无法让我的路线在我的Angular应用程序中工作。 它正确地显示主模板,但是当我点击其他模板的链接时,什么也没有发生。 这是我的代码:

INDEX.HTML

<!DOCTYPE html> <html> <head> <title>Node, NPM and Bower</title> <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.css"> <link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.css"> <link rel="stylesheet" href="style.css"> </head> <body ng-app="app"> <nav> <h3>Angular App</h3> <a href="/">Home</a> <a href="/about">About</a> </nav> <div ng-view></div> <script src="bower_components/angular/angular.js"></script> <script src="bower_components/angular-route/angular-route.js"></script> <script src="./app/app.js"></script> </body> </html> 

APP.JS

 angular.module("app", ["ngRoute"]). config(function($routeProvider) { $routeProvider .when("/", { template : "<h1>Home</h1>" }) .when("/about", { template : "<h1>About</h1>" }); }); 

另外,当我尝试使用Express和Node来使用本地主机时,是否有Bootstrap和Angular完全不起作用的原因? 例如,如果我在浏览器中拉起index.html文本是sans-serif等,但是如果我用localhost拉起来,它仍然是默认的serif字体。

SERVER.JS

 var express = require('express'); var app = express(); var path = require('path'); app.get('/', function(req, res) { res.sendFile(path.join(__dirname + '/index.html')); }); app.listen(3000, function() { console.log('app started'); }); 

angular1.5
所以基本的1.5路由,你需要使用:

  <a href="#about">About</a> 

击中路线。 请参阅Plunker了解更多信息

angular度1.6
如果你使用的是angular度1.6,那就是:

 <a href="#!about">About</a> 

看看AngularJS:ngRoute不适用于其他选项。

Bootstrap问题
不应该有任何问题,这是正确的caching。

我想出了答案。 你需要告诉服务器从他们的目录路由你的静态文件,如下所示:

 app.use(express.static(__dirname + '/views')); app.use('/bower_components', express.static(__dirname + '/bower_components')); app.use('/public', express.static(__dirname + '/public'));