Узлу не удалось найти представление «ошибка» в приложении Express / реакции - PullRequest
0 голосов
/ 20 февраля 2019

Я работаю над своим приложением, и оно сработало несколько часов назад.Но теперь, когда я запускаю его, я получаю следующую ошибку.

В /lib нет каталога /views, но в моем src/.Он содержит error.jade.

Я все перепробовал.Удаление /lib, переустановка всего ...

Ошибка: не удалось найти представление "ошибка" в каталоге представлений "/ Users / vemundeldegard / all / server / lib / views" в Function.render (/Users/vemundeldegard/all/server/node_modules/express/lib/application.js:580:17) в ServerResponse.render (/Users/vemundeldegard/all/server/node_modules/express/lib/response.js:1008:7) в /Users/vemundeldegard/all/server/lib/app.js:47:7 в Layer.handle_error (/Users/vemundeldegard/all/server/node_modules/express/lib/router/layer.js:71:5)в trim_prefix (/Users/vemundeldegard/all/server/node_modules/express/lib/router/index.js:315:13) в /Users/vemundeldegard/all/server/node_modules/express/lib/router/index.js:284: 7 в Function.process_params (/Users/vemundeldegard/all/server/node_modules/express/lib/router/index.js:335:12) в следующем (/ Users / vemundeldegard / all / server / node_modules / express / lib/router/index.js:275:10) в Layer.handle_error (/ Users / vemundeldegard / all / server / node_modules / express / lib / router / layer.js: 67: 12) в trim_prefix (/Users/vemundeldegard/all/server/node_modules/express/lib/router/index.js:315:13)

App.js

var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var { BUILD_DIR, PUBLIC_DIR } = require('./paths');
var reactRenderer = require('./react-renderer');

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

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());

app.get('/', reactRenderer);

app.use(express.static(BUILD_DIR));
app.use(express.static(PUBLIC_DIR));

// catch 404 and forward to error handler
app.use(function(req, res, next) {
  next(createError(404));
});

// 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;

Paths.js:

"use strict";

var path = require('path');

var BUILD_DIR = path.join(__dirname, '..', '..', 'client', 'build');
var PUBLIC_DIR = path.join(__dirname, '..', '..', 'public');
module.exports = {
  BUILD_DIR: BUILD_DIR,
  PUBLIC_DIR: PUBLIC_DIR
};

enter image description here

1 Ответ

0 голосов
/ 20 февраля 2019

(я бы прокомментировал, но мне не хватает представителей)

Использование __dirname привлекло мое внимание - возможно, вы случайно запускаете свое приложение из неправильного каталога (в данном случае lib)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...