gpt4 book ai didi

javascript - 如何让 Jade 的外部 JSON 从 Express 呈现?

转载 作者:搜寻专家 更新时间:2023-11-01 00:30:43 26 4
gpt4 key购买 nike

我是 Node/Express 的初学者,我想使用 Jade 和 Express 来提供我的静态文件。

以前我将 Jade 与 gulp-jade 和 gulp-data 结合使用,我将能够呈现 Jade 文件并使用具有 JSON 文件的 gulp-data 来呈现每个页面。

index.jade + index.json 会给我 index.html

的输出

现在我遇到了如何使用 Express 将我的外部 JSON 文件包含到 Jade 的问题。

例如:

server.js

app.get('/', function(req, res){
res.render('pages/index', {pagetitle: 'Hello World'});
});

pages/index.jade

h2 #{pagetitle}

这将呈现给

<h2>Hello World</h2>

问题

我想将 {pagetitle: 'Hello World'} 替换为外部 json 文件,即 index.json。我可以这样做吗?

app.get('/', function(req, res){
res.render('pages/index', 'folder_name/index.json');
});

肯定是错的吧?

最佳答案

是的,这是错误的。这会将字符串本身设置为模型。你可能想看看 NodeJS 的 fs 模块。这将允许您读取文件的内容。然后您可以解析 JSON 并将生成的对象作为模型发送到您的 jade 模板。

不要忘记异步读取您的 JSON,否则您会阻塞您的服务器。

https://nodejs.org/api/fs.html

下一步是创建一个模块,负责读取此文件,将其保存在内存中,并且仅在使用观察程序更改时才重新加载。

关于javascript - 如何让 Jade 的外部 JSON 从 Express 呈现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35473025/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com