Spiegherò il problema nel modo più dettagliato possibile.Express e AngularJS - la pagina Web si blocca quando si tenta di aprire la pagina iniziale
Sto tentando di utilizzare AngularJS con Express e sono in difficoltà. Desidero visualizzare file HTML (non utilizzando un motore di template). Questi file HTML avranno direttive AngularJS.
Tuttavia, non sono in grado di visualizzare un semplice file HTML stesso!
La struttura di directory è la seguente:
Root
---->public
-------->js
------------>app.js
------------>controllers.js
---->views
-------->index.html
-------->partials
------------>test.html
---->app.js
Il contenuto di public/js/app.js
è:
angular.module('myApp', []).
config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/', {templateUrl: 'partials/test.html', controller: IndexCtrl});
$routeProvider.otherwise({redirectTo: '/'});
}]);
Il contenuto di public/js/controllers/js
è:
function IndexCtrl() {
}
Il contenuto del tag body in views/index.html
è:
<div ng-view></div>
Questo è tutto. L'aspettativa è che AngularJS sostituiranno la vista di cui sopra con test.html - views/partials/test.html
i cui contenuti sono:
This is the test page!
racchiuso all'interno dei tag di paragrafo. Questo è tutto!
Infine, i contenuti di ROOT/app.js
file è:
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);
});
Ora, quando faccio $node app.js
nella cartella principale, il server avvia senza alcun errore. Tuttavia, se vado a localhost:3000
nel browser, l'URL cambia in localhost:3000/#/
e la pagina si blocca/si blocca. Non riesco nemmeno a controllare il log della console in Chrome!
Questo è il problema che sto affrontando. Qualche idea su cosa sto facendo male?
quali errori vengono generati nella console del browser? – charlietfl
@charlietfl probabilmente nulla. Principalmente quando la pagina sembra bloccarsi è perché la risposta non si sta concludendo. – Pickels
'probabilmente niente? ?? entrambi gli errori vengono lanciati o non sono – charlietfl