我將盡可能詳細地解釋問題。Express和AngularJS - 嘗試打開主頁時網頁會凍結
我正在試圖使用Express和AngularJS運行陷入困境。我希望顯示HTML文件(不使用模板引擎)。這些HTML文件將包含AngularJS指令。
但是,我無法顯示一個簡單的HTML文件本身!
的目錄結構如下:
Root
---->public
-------->js
------------>app.js
------------>controllers.js
---->views
-------->index.html
-------->partials
------------>test.html
---->app.js
的public/js/app.js
內容是:
angular.module('myApp', []).
config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/', {templateUrl: 'partials/test.html', controller: IndexCtrl});
$routeProvider.otherwise({redirectTo: '/'});
}]);
的public/js/controllers/js
內容是:
function IndexCtrl() {
}
身體標記的內容在views/index.html
是:
<div ng-view></div>
就是這樣。人們期望,AngularJS將取代以test.html的上述觀點 - views/partials/test.html
,其內容是:
This is the test page!
段落標記中包含。而已!
最後,ROOT/app.js
文件的內容是:
var express = require('express');
var app = module.exports = express();
// Configuration
app.configure(function(){
app.set('views', __dirname + '/views');
app.engine('html', require('ejs').renderFile);
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.static(__dirname + '/public'));
app.use(app.router);
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.configure('production', function(){
app.use(express.errorHandler());
});
// routes
app.get('/', function(request, response) {
response.render('index.html');
});
// Start server
app.listen(3000, function(){
console.log("Express server listening on port %d in %s mode", this.address().port, app.settings.env);
});
現在,當我在根文件夾做$node app.js
,在服務器啓動沒有任何錯誤。但是,如果我在瀏覽器中訪問localhost:3000
,則URL更改爲localhost:3000/#/
,頁面卡住/凍結。我甚至無法檢查Chrome中的控制檯日誌!
這是我面臨的問題。任何線索我做錯了什麼?
在瀏覽器控制檯中拋出什麼錯誤? – charlietfl 2013-02-24 18:36:14
@charlietfl可能沒有。大多數情況下,當頁面似乎凍結時,這是因爲響應沒有結束。 – Pickels 2013-02-24 18:39:41
'可能沒什麼'?錯誤被拋出或者不是 – charlietfl 2013-02-24 20:01:07