Javascript 如何在同一个节点服务器上呈现Jade模板和HTML文件?
我目前在我的节点项目中使用Jade模板。设置非常基本:Javascript 如何在同一个节点服务器上呈现Jade模板和HTML文件?,javascript,html,node.js,express,pug,Javascript,Html,Node.js,Express,Pug,我目前在我的节点项目中使用Jade模板。设置非常基本: app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); 我正在用纯HTML构建我网站的新部分,HTML模板位于与Jade模板不同的文件夹中。 我的问题是,我怎样才能设置一个HTML视图引擎来为来自不同目录的文件提供服务(即:不是来自视图)?好的,这些HTML文件将需要与您的nodejs服务器交互,以更改诸如“title”之类的值 翡翠
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
我正在用纯HTML构建我网站的新部分,HTML模板位于与Jade模板不同的文件夹中。
我的问题是,我怎样才能设置一个HTML视图引擎来为来自不同目录的文件提供服务(即:不是来自
视图)?好的,这些HTML文件将需要与您的nodejs服务器交互,以更改诸如“title”之类的值
翡翠-
title=页面标题
(参考:)工程
然而,为了在提供HTML页面时获得相同的功能,您必须首先提供HTML页面作为对请求的响应,然后发出另一个AJAX请求来更改DOM
要提供HTML页面,您可以使用“fs”读取文件HTML文件内容,然后使用HTML内容响应用户请求或使用“express”功能
response.sendFile('/path/to/file.html')。您有两个选项
您只需将普通HTML放在.jade文件中,就可以了
或者,您可以设置一个静态路由器,直接为HTML文件提供服务
app.use(express.static('./html-views'));
这样,您的/html视图中的任何内容都将以静态方式提供。
GET/view.html
将提供/html视图/view.html
您可以将普通HTML放在.jade文件中,它会工作的,谢谢。有没有从两个不同的文件夹中提供.jade和.html?这也可以解决它,所以我将它标记为答案。我所做的是使用res.sendfile(path.join(uuu dirname,../path,'../index.html')
从不同于我的.jade模板所在的目录提供html文件。