gpt4 book ai didi

html - Node js hbs 模块和引擎

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:57 34 4
gpt4 key购买 nike

我是 Node js 新手,遇到了这个 hbs 模块,并在这部分代码中看到了它:

app.set('view engine', 'html');
app.engine('html', require('hbs').__express);

谁能解释一下什么是 hbs( Handlebars - 但它有什么作用)?如果第一行已经说明文件将以 html 格式打开,为什么还需要第二行

谢谢!

最佳答案

hbshandlebars.js JavaScript 模板引擎express.js 包装器Handlebars.js是一个模板引擎,可以让编写html代码变得更容易,如果有兴趣可以看看here 。但是handlebars.js用于客户端编译(浏览器编译模板),因此您需要一个包装器,例如hbs

包装器使得在express.js中使用客户端库成为可能,这就是hbs所做的。这有点简化,但它解释了原理。

关于第二个问题,为什么需要第二行。那是因为如果您使用标准线:

app.set('view engine', 'hbs');

express.js 查找名为 hbs View 引擎,但在您的示例中:

app.set('view engine', 'html');
app.engine('html', require('hbs').__express);

express.js 不知道在将 View 引擎定义为html的情况下要查找什么,并且您必须定义此 View 引擎在第二行中,所以express.js知道要寻找什么。如果你看here ,您可以看到它显示,Express 在内部加载它

关于html - Node js hbs 模块和引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27342583/

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