2017-04-07 142 views
0

每當訪問除根以外的其他路徑時,express都無法找到包含所有樣式表和JavaScript文件的公用文件夾,而是搜索路徑路徑中的資源。 任何幫助,將不勝感激。在路徑中搜索公用文件夾路徑

錯誤 訪問http://localhost:3000/users/login/時給出 -

GET /users/login/stylesheets/bootstrap.css 404 14.872毫秒 - 10418
GET /users/login/stylesheets/style.css 404 7.134 MS - 10418
GET /users/login/javascripts/bootstrap.js 404 57.890毫秒 - 10418
GET /users/login/javascripts/bootstrap.js 404 5.326毫秒 - 10418

app.js

var express = require('express'); 
var path = require('path'); 
var favicon = require('serve-favicon'); 
var logger = require('morgan'); 
var cookieParser = require('cookie-parser'); 
var bodyParser = require('body-parser'); 

var app = express(); 

// extra modules 
var hbs = require('hbs'); 
var defaultLogger = require('express-logger'); 

var index = require('./routes/index'); 
var users = require('./routes/users'); 

// view engine setup 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'hbs'); 
app.set('view options', {layout: './layouts/application'}); 
hbs.registerPartials(__dirname + '/views/layouts/partials'); 

app.use(express.static(path.join(__dirname, 'public'))); 
app.use(defaultLogger({path: "log/development.log"})); //logger 
app.use(favicon(path.join(__dirname, 'public', 'bulb.ico'))); 
app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); 

app.use('/', index); 
app.use('/users', users); 

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
    var err = new Error('Not Found'); 
    err.status = 404; 
    next(err); 
}); 

// error handler 
app.use(function(err, req, res, next) { 
    // set locals, only providing error in development 
    res.locals.message = err.message; 
    res.locals.error = req.app.get('env') === 'development' ? err : {}; 

    // render the error page 
    res.status(err.status || 500); 
    res.render('error'); 
}); 

module.exports = app; 

uses.js

var express = require('express'); 
var router = express.Router(); 
var userService = require('../services/users') 

/* GET users listing. */ 
router.get('/', function(req, res, next) { 
    userService.all(function(users){ 
    res.render('users/dummy') 
    }) 
}); 

// GET login form 
router.get('/login', function(req, res, next){ 
    res.render('users/login', {title: 'Login'}); 
}); 

module.exports = router; 
+0

您能否提供樣式和腳本加載的HTML部分? –

回答

1

我想現在你的路徑以這種格式時,使用絕對路徑: <link href="stylesheets/bootstrap.css">

您應始終在路徑的開始處包含/。這將幫助您加載正確的路徑。 <link href="/stylesheets/bootstrap.css">

+0

謝謝你只是問題 – Ayush

1

需要js和css文件/javascripts/bootstrap.js/stylesheets/bootstrap.css

+0

謝謝,這只是問題 – Ayush