如何在同一节点服务器上同时呈现 Jade 模板和 HTML 文件?
How can I render both Jade templates and HTML files on same Node server?
我目前在我的 Node 项目中使用 Jade 模板。设置非常基本:
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
我正在使用纯 HTML 构建我网站的新部分,并且 HTML 模板与 Jade 模板位于不同的文件夹中。
我的问题是,如何设置才能让我也可以拥有一个 HTML 视图引擎来提供来自不同目录(即:不是来自 views
)的文件?
好吧,这些 HTML 文件将需要与您的 nodejs 服务器交互以更改值,比如 "title"。
玉中-
标题=页面标题
(参考:http://jade-lang.com/)有效。
但是,要在提供 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-views
文件夹中的任何内容都将静态提供。
GET /view.html
将投放 ./html-views/view.html
我目前在我的 Node 项目中使用 Jade 模板。设置非常基本:
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
我正在使用纯 HTML 构建我网站的新部分,并且 HTML 模板与 Jade 模板位于不同的文件夹中。
我的问题是,如何设置才能让我也可以拥有一个 HTML 视图引擎来提供来自不同目录(即:不是来自 views
)的文件?
好吧,这些 HTML 文件将需要与您的 nodejs 服务器交互以更改值,比如 "title"。
玉中- 标题=页面标题 (参考:http://jade-lang.com/)有效。
但是,要在提供 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-views
文件夹中的任何内容都将静态提供。GET /view.html
将投放./html-views/view.html