KoaJS 模板
-
定义和使用
Pug 是一个模板引擎。模板引擎用于消除服务器代码与 HTML 的混乱,将字符串大量连接到现有的 HTML 模板上。Pug 是一个非常强大的模板引擎,它具有过滤、包含、继承、插值等多种功能,在这方面还有很多工作要做。要在 Koa 中使用 Pug,我们需要使用以下命令安装它。安装了 pug 之后,将其设置为应用程序的模板引擎。将以下代码添加到应用程序 js 文件。现在,创建一个名为 views 的新目录。在目录中,创建一个名为 first_view.pug,并在其中输入以下数据。若要运行此页面,请将以下路由添加到应用程序。您将收到的输出为-Pug 所做的是,将这个看起来非常简单的标记转换为 html。我们不需要跟踪结束标记,也不需要使用类和id关键字,而是使用 "." 和 "#" 来定义它们。上面的代码首先转换为Pug 能够做的不仅仅是简化 HTML 标记。让我们来探讨一下 Pug 的一些特征。
-
简单标签
标签根据缩进进行嵌套。与上面的例子一样,<title> 在 >head> 标记中缩进,因此它位于标记内。然而,<body> 标签在同一个缩进上,因此它是 >head> 标签的兄弟。我们不需要关闭标签。一旦 Pug 遇到相同或外部缩进级别的下一个标记,它就会为我们关闭标记。有三种方法可以将文本放入标记内–空间分隔(Space seperated)−
Piped text −
Block of text −
-
注释
Pug 使用与 JavaScript (//) 相同的语法来创建注释。这些注释将转换为 html 注释()。例如,此注释将转换为-
-
属性
为了定义属性,我们在括号中使用逗号分隔的属性列表。类和 ID 属性有特殊的表示。下面的代码行包括为给定的 html 标记定义属性、类和id。这行代码,被转换成-
-
将值传递到模板
当我们呈现一个 Pug 模板时,我们实际上可以从路由处理程序向它传递一个值,然后我们可以在模板中使用这个值。使用以下代码创建一个新的路由处理程序。然后,在 views 目录中创建一个新的视图文件,dynamic.pug,使用以下代码。打开 localhost:3001/dynamic 在你的浏览器和下面应该是输出。−我们也可以在文本中使用这些传递的变量。为了在标记的文本之间插入传递的变量,我们使用#{variableName}语法。例如,在上面的例子中,如果我们想插入来自 菜鸟教程 的问候语,那么我们必须使用以下代码。这种使用值的方法称为插值,推荐使用
-
条件语句
我们也可以使用条件语句和循环构造。考虑这个实际的例子,如果一个用户已经登录,我们希望显示 "Hi,user",如果没有,那么我们希望向他显示一个 "jc2182" 链接。为此,我们可以定义一个简单的模板,例如-当我们使用我们的路线渲染它,如果我们通过一个像-它会发出一条信息显示 Hi, Ayush。但是,如果我们不传递任何对象或传递一个没有用户密钥的对象,那么我们将得到一个另一个链接。
-
包含和组件
Pug 提供了一种非常直观的方法来为 web 页面创建组件。例如,如果你看到一个新闻网站,带有 logo 和 categories 的标题总是固定的。我们可以使用 include,而不是将其复制到每个视图。下面的示例显示了如何使用 include-使用以下代码创建三个视图–header.pug
content.pug
footer.pug
为此创建一个路由,如下所示。浏览器输入路由 localhost:3000/components 您应该得到以下输出。