模板中的包含,部分和/或块之间有什么区别。 EJS / ejs-locals

时间:2013-06-22 23:44:52

标签: javascript node.js express templating ejs

我已经在Express和Node.JS上使用EJS了一段时间,我想我已经理解了基础知识。我已经尝试了EJS include函数,它允许我将一个模板包含在另一个模板中。我还使用了一个名为ejs-locals的库,它提供了简单的真正布局支持。我注意到的一件事是ejs-locals还定义了可以与EJS一起使用的partialblock函数。我似乎无法找到这三个概念之间的差异的良好解释。据我所知,它们是模板化的一般概念,而不仅仅是EJS。在我看来,partialblock仍然是包含其他模板文件的方式,但它们有何不同?

1 个答案:

答案 0 :(得分:13)

include:只需从给定文件中获取内容并将其放在include语句所在的位置。换句话说:该文件可以访问它所包含的文件中定义的所有变量。

partials:与include几乎相同,区别在于部分只能访问渲染时传递给它的变量。

blocks:在您的布局中,您可以定义块的位置'内容应该是。在渲染的文件中,您可以定义这些块的内容,并定义要将块内容渲染到的布局。