Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 错误:找不到模块';html';使用Node.JS和Express_Javascript_Node.js_Express_Mean Stack_Meanjs - Fatal编程技术网

Javascript 错误:找不到模块';html';使用Node.JS和Express

Javascript 错误:找不到模块';html';使用Node.JS和Express,javascript,node.js,express,mean-stack,meanjs,Javascript,Node.js,Express,Mean Stack,Meanjs,我一直在看关于这个问题的回答,但没有任何帮助。一些解决方案也给了我更多的错误 我尝试使用Node.JS路由到不同的页面。在学习了一些关于平均堆栈的知识后,我决定使用Node、Express和Angular(到目前为止还没有)。如果我尝试到任何不是“/”路由的地方,我会得到一个错误,说“找不到模块”html。以下是有关守则: //dependencies var express = require('express'); var path = require('path'); var engine

我一直在看关于这个问题的回答,但没有任何帮助。一些解决方案也给了我更多的错误

我尝试使用Node.JS路由到不同的页面。在学习了一些关于平均堆栈的知识后,我决定使用Node、Express和Angular(到目前为止还没有)。如果我尝试到任何不是“/”路由的地方,我会得到一个错误,说“找不到模块”html。以下是有关守则:

//dependencies
var express = require('express');
var path = require('path');
var engines = require('consolidate')

//variables
var RUN_PORT = 8080;
var VIDEO_IN_PORT = 45679;
var CONTROL_OUT = 45678;
var app = express();

app.use(express.static(path.join(__dirname, 'public')));

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

//robot_control.html routing
app.get('/robot_control', function(req, res){
    res.render("robot_control.html");
});

//error.html routing
app.get('/error', function(req, res){
    res.render("error.html");
});

//showing that the program is running on the RUN_PORT
app.listen(RUN_PORT, function(){
    console.log("Running on port " + RUN_PORT);
});

我在这里看不到什么?一切看起来都很好。我在我的package.json中安装的都是Express。我可以很好地访问索引页,但除此之外的任何操作都会导致该错误。

该问题是由使用
res.render('SOMEFILE.html')
引起的,因为您没有告诉Express如何使用
.html
扩展名呈现文件

由于您尚未使用任何模板,因此可以使用:

// Somewhere at the top:
const path  = require('path');
const VIEWS = path.join(__dirname, 'views');
...

// In your route handlers:
res.sendFile('index.html', { root : VIEWS });
当您想开始使用模板时,请查看以下内容: