2014-01-13 1 views
0

노드/각도 및 비취가있는 단일 페이지 웹 앱에서 작업하고 있습니다. 필자는 매우 익숙하지 않았으며, 필자의 app.js 파일로해야 할 일을 알고 싶었 기 때문에 제 1 페이지 템플릿이 제이드 템플릿이 아닌 각도 파일에서로드되었습니다. 노드가있는 angularJS 페이지에서로드하는 방법

나는 같은 내 파일을 구조화 :

exports.index = function(req, res){ 
    res.render('index', { title: 'Test Application' }); 
}; 

// View A 
exports.a = function(req, res) { 
    res.render('partials/a', { layout: false, test: 'LOL' }); 
}; 

// View B 
exports.b = function(req, res) { 
res.render('partials/b', { layout: false, test: 'YOLO' }); 
}; 

:

var express = require('express'); 
var routes = require('./routes'); 
var user = require('./routes/user'); 
var http = require('http'); 
var path = require('path'); 

var app = express(); 

// all environments 
app.set('port', process.env.PORT || 3000); 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'jade'); 
app.use(express.favicon()); 
app.use(express.logger('dev')); 
app.use(express.json()); 
app.use(express.urlencoded()); 
app.use(express.methodOverride()); 
app.use(app.router); 
app.use(express.static(path.join(__dirname, 'public'))); 
app.use(express.cookieParser('cookies monster')); // Cookie secret 

// development only 
if ('development' == app.get('env')) { 
app.use(express.errorHandler()); 
} 

/* 
* Views 
*/ 
app.get('/', routes.index); 
app.get('/a', routes.a); 
app.get('/b', routes.b); 

http.createServer(app).listen(app.get('port'), function(){ 
    console.log('Express server listening on port ' + app.get('port')); 
}); 

내하는 index.js

은 다음과 같습니다

public/ 
index.html 
    javascript/ 
    img/ 
    stylesheets/ 
routes/ 
    index.js 
views/ 
    partials/ 
     a.jade 
     b.jade 
app.js 

이 내 app.js는 모습입니다 이걸 실행할 때 index.html을 첫 페이지로 사용하지 않습니다. 처음 페이지 템플리트가 실제로 index.html이되도록 어떻게 그렇게할까요? 나는 어디에서나 대답을 찾을 수없는 것 같습니다.

답변

2

라우터에서 실제 index.html 파일을 반환 할 수 있습니다.

app.get('/', function(req, res, next){ 
    return res.sendfile(app.get('public') + '/index.html'); 
}); 

나는 또한 app.set('public', path.join(__dirname, 'public'));를 넣어 있음을 유의은 내부의 공용 디렉토리에 쉽게 액세스 할 app.js.

+0

대신 app.get ('/', routes.index) 또는 그 후에 사용해야합니까? –

+0

감사합니다. –

관련 문제