Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.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 包含在express 500错误-.html扩展视图引擎中_Javascript_Node.js_Express_Ejs - Fatal编程技术网

Javascript 包含在express 500错误-.html扩展视图引擎中

Javascript 包含在express 500错误-.html扩展视图引擎中,javascript,node.js,express,ejs,Javascript,Node.js,Express,Ejs,我有一个express应用程序,其中我的视图设置为HTML,但实际上我使用ejs引擎来保留.HTML扩展名。看起来是这样的: app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'html'); app.engine('html', ejs.renderFile); app.use(expressLayouts); 我想在我的模板中使用ejs包含。我的文件夹结构如下: views/includes/in

我有一个express应用程序,其中我的视图设置为HTML,但实际上我使用ejs引擎来保留.HTML扩展名。看起来是这样的:

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'html');
app.engine('html', ejs.renderFile);
app.use(expressLayouts);
我想在我的模板中使用ejs包含。我的文件夹结构如下:

views/includes/include.html

我的include如下所示:

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'html');
app.engine('html', ejs.renderFile);
app.use(expressLayouts);
当将视图引擎设置为ejs时,例如app。设置“视图引擎”、“ejs”;这包括预期的工作。但是当使用我现在的视图引擎配置时,设置'view engine','html'; app.engine'html',ejs.renderFile;我明白了:

GET/500 2.074 ms-2580错误:找不到包含文件


在我的视图引擎中,与我现在采用的方法相比,我是否需要显式地将其设置为ejs?如何获得include以使用.html扩展名?

我认为EJS源代码中的相关行如下所示:


如果include还没有扩展名,则在文件名末尾追加.ejs。似乎没有任何方法可以改变这一点,但您可以显式地将.html扩展名添加到include中。

没有想到这一点,但现在已经非常有意义了。