404 Ошибка экспресс-маршрутизации - PullRequest
0 голосов
/ 14 мая 2018

Я не могу понять, где я ошибаюсь с этой простой задачей маршрутизации.Когда я перехожу на localhost: 3030 / staff, я получаю сообщение «Cannot GET / staff» и ошибка 404.

Вот мои настройки.

app.js:

const express = require('express');
const app = express();
const port = process.env.PORT || 3030;

const staffRouter = require('./routes/staffrouter.js');

app.use('/static', express.static(__dirname + './public'));

app.use('./staff', staffRouter);

app.get('/', function(req, res) {
    res.render('index.pug');
});

app.listen(port);

Я пытался использовать пути "/ staff" в моих запросах GET / POST, но это нене работает, и не так, как это должно работать в соответствии с учебником, который я делаю.Я действительно застрял.

/ routs / staffrouter.js:

var express = require('express');
var router = express.Router();

const staff = require('../staff').staff;
const urlEncoded = (express.urlencoded({ extended: true }));

router.get('/', function(req, res, next) {
    res.render('staff.pug', { 
        deptOptions: staff.populateSelectors('department'),
        posOptions: staff.populateSelectors('position'),
        empArray: staff.readWriteJSON()
    });
 });

// Add new staff obj
router.post('/', urlEncoded, function(req, res, next) {
    let sObj = req.body;
    let dataArray = staff.readWriteJSON();

    //console.log('data:', data);
    dataArray.push(new staff.Employee(
        sObj.fName, 
        sObj.lName, 
        sObj.staffNum, 
        sObj.department, 
        sObj.position, 
        sObj.email, 
        sObj.phone
     ));
    staff.readWriteJSON(dataArray)
    res.render('../views/staff.pug', { 
        deptOptions: staff.populateSelectors('department'),
        posOptions: staff.populateSelectors('position'),
        empArray: staff.readWriteJSON()
    });
});

module.exports = router;

1 Ответ

0 голосов
/ 14 мая 2018

неправильная сфера изменения порядка

app.use('/static', express.static(__dirname + './public'));
const staffRouter = require('./routes/staffrouter.js');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...