0
的上市
我的應用程序未加載「EJS」模塊,當我嘗試在我app.js
文件調用路由,我想知道這是爲什麼。錯誤:無法找到模塊「EJS」即使它的package.json
我的問題是similar in scope to this one,但它有一些額外的皺紋,它沒有在答案中解決,所以我想我會把它變成一個新的問題完全。
如果我開始一個非常基本的app.js
這樣的文件,它調用ejs
它按預期工作並且不會產生錯誤。
APP.JS:
var express = require('express');
var app = express();
app.set('view engine', 'ejs');
app.get('/', function(req, res){
res.send("Hello World");
}).listen(3000, function(){
console.log("The port is now listening at 3000");
});
但是,一旦我修改app.js
使用路線呈現視圖我在標題收到錯誤消息。
下面的腳本提供了錯誤:
APP.JS:
var express = require('express');
var app = express();
var root = require('./routes/index');
app.set('view engine', 'ejs');
app.set('views', __dirname + '/views');
app.use(express.static(__dirname + '/public'));
app.use(root);
app.listen(3000, function(){
console.log("The port is now listening at 3000");
});
module.exports = app;
我index.js文件,我用它來建立的路線是這樣的:
INDEX .JS:
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res) {
res.render('index', {
pageTitle: 'The Formula Generator',
pageDescription: 'Easily manage and store your supplement formulas',
pageID: 'home' });
});
module.exports = router;
EJS正確裝入我的package.json像這樣:
的package.json:
"dependencies": {
"body-parser": "~1.15.2",
"cookie-parser": "~1.4.3",
"debug": "~2.2.0",
"ejs": "^2.5.5",
"express": "~4.14.0",
"mongodb": "^2.2.16",
"monk": "^3.1.3",
"morgan": "~1.7.0",
"serve-favicon": "~2.3.0"
},
它也安裝在我的文件夾node_modules也。
我的文件結構目前看起來是這樣的:
嗨Sumeet,謝謝你的回答。但是,我仍然收到相同的錯誤消息。我開始認爲這個問題是與我的計算機上的系統變量設置不正確,因爲這確實似乎是一個簡單的程序,應該工作。任何想法可能是什麼? –
NPM安裝EJS並把它安裝EJS你嗎?@JonathanBechtel – Sumeet
你能告訴我們錯誤的堆棧跟蹤你越來越@JonathanBechtel – Sumeet