我是新来的节点js和跨越这个HBS模块来了,看到它在例如这部分的代码:
app.set('view engine', 'html');
app.engine('html', require('hbs').__express);
任何人都可以请解释一下什么是哈佛商学院(车把 - 但它能做什么)? 如果第一已经表示,这些文件就会被打开,HTML为什么需要第二线
谢谢!
我是新来的节点js和跨越这个HBS模块来了,看到它在例如这部分的代码:
app.set('view engine', 'html');
app.engine('html', require('hbs').__express);
任何人都可以请解释一下什么是哈佛商学院(车把 - 但它能做什么)? 如果第一已经表示,这些文件就会被打开,HTML为什么需要第二线
谢谢!
HBS对于handlebars.js JavaScript的模板引擎 express.js包装 。 Handlebars.js是一个模板引擎,使编写HTML代码更容易,如果你intrested可以看看这里 。 但handlebars.js是为客户端copilation(浏览器编译模板),所以你需要一个像哈佛商学院的包装 。
一个包装能够使用例如在express.js客户端库,这是哈佛商学院做什么。 这是一个有点简化,但它解释的原则。
在你的第二个问题, 为什么需要第二行 。 那是因为如果使用标准线:
app.set('view engine', 'hbs');
express.js查找视图引擎命名为哈佛商学院 ,但在你的例子:
app.set('view engine', 'html');
app.engine('html', require('hbs').__express);
express.js dosent知道来寻找定义为HTML 视图引擎的情况下,什么,你必须定义在第二行这种观点引擎 ,所以express.js知道要寻找什么。 如果你看看这里 ,你可以看到,它说, 快速的负载在内部 。