2014-09-17 2 views
1

Я пытаюсь обслуживать домашний вид с помощью Express/Angular, так что при обращении к корневому URL ('/') загружается представление. Прямо сейчас, переходя к http://localhost:3000, отображается пустая страница с <!-- ngView: --> и ничего больше. Навигация на http://localhost:3000/about отображает страницу о себе как ожидалось. Как получить частичный номер дома, который будет отображаться при обращении к корню?Угловой '/' маршрут не работает с Express

app.js (ж/Экспресс 4.9.0)

var express = require('express'); 
var app = express(); 
var server = require('http').Server(app); 
var io = require('socket.io')(server); 
var routes = require('./routes'); 
var path = path = require('path'); 

app.set('port', process.env.PORT || 3000); 
app.use(express.static(path.join(__dirname, 'public'))); 

server.listen(app.get('port'), function() { 
    console.log('Listening on port ' + app.get('port')); 
}); 

app.set('views', __dirname + '/views'); 
app.set('view engine', 'jade'); 

app.get('/', routes.index); 
app.get('/partials/:name', routes.partials); 
app.get('*', routes.index); 

маршрутов/routes.js

exports.index = function(req, res){ 
    res.render('index'); 
}; 

exports.partials = function (req, res) { 
    var name = req.params.name; 
    res.render('partials/' + name); 
}; 

просмотров/index.jade

doctype 
html(ng-app="myApp") 
    head 
     meta(charset='utf8') 
     base(href='/') 
     title Angular Express Seed App 
     link(rel='stylesheet', href='/css/app.css') 
    body 
     div(ng-controller='AppCtrl') 
      div(ng-view) 


     script(src='bower_components/angular-loader/angular-loader.js') 
     script(src='bower_components/angular/angular.js') 
     script(src='bower_components/angular-route/angular-route.js') 
     script(src='bower_components/socket.io-client/socket.io.js') 
     script(src='js/app.js') 
     script(src='js/main.js') 
     script(src='js/services.js') 
     script(src='js/controllers.js') 
     script(src='js/filters.js') 
     script(src='js/directives.js') 

общественный/JS/app.js

angular.module('myApp', [ 
    'myApp.controllers', 
    'myApp.filters', 
    'myApp.services', 
    'myApp.directives', 
    'ngRoute' 
]). 
config(function ($routeProvider, $locationProvider) { 
    $routeProvider. 
    when('/', { 
     templateURL: 'partials/home', 
     controller: 'MyCtrl2' 
    }). 
    when('/about', { 
     templateUrl: 'partials/about', 
     controller: 'MyCtrl1' 
    }). 
    otherwise({ 
     redirectTo: '/' 
    }); 

    $locationProvider.html5Mode(true); 
}); 

У меня также есть views/partials/home.jade и views/partials/about.jade

+0

Вы можете получить доступ к частичной странице с помощью 'HTTP: // локальный: 3000/обертоны/дома'? – osrpt

+0

Да, но он не включает контент из index.jade – user1560249

+0

Есть ли ошибки или журналы в консоли при навигации к '/'? – jjl2

ответ

0

Я думаю, что вы, возможно, опечатка templateUrl в

when('/', { 
    templateURL: 'partials/home', 
    controller: 'MyCtrl2' 
}). 
Смежные вопросы