node前端模板引擎Jade之标签的基本写法

Jade是一种node.js前端模板引擎,其核心特点是通过缩进来代替标记,减少了多余标记的输入,使模板文件更加简洁易读。下面将详细讲解Jade标签的基本写法。

在Jade模板中,元素的标签名不需要使用尖角号和结束标记,而是使用缩进的方式来表示嵌套。例如,以下代码用Jade来表示一个div元素:

div

这里的div就代表了一个<div>标签。

在实际开发中,我们还需要给标签加上属性。下面以div元素为例,介绍Jade中如何给标签添加属性:

div(className="wrapper")

上述代码表示创建了一个class名为wrapper<div>元素。这里的className就代表了class属性,类似地,还有id和其他常见的属性。

除了给标签添加属性外,我们还可以使用文本内容。在Jade模板中,文本内容也可以使用缩进的方式来表示。例如,以下代码表示一个含有文本的div元素:

div
  | 这里是div元素的文本内容

在上述代码中,|符号用于表示下一行是文本内容。

Jade还支持插值表达式,可以将Javascript代码嵌入到模板中。例如,以下代码演示如何在Jade模板中使用插值表达式输出Javascript变量:

div
  p= "这是一个Jade模板"

在上述代码中,p=表示输出变量。在这个例子中,输出的变量是一个字符串。

接下来,我们用两个具体的实例继续说明Jade的标签写法。

第一个例子:创建一个表格

以下是一个使用Jade创建表格的例子:

table
  thead
    tr
      th ID
      th Name
      th Age
  tbody
    each val, index in userList
      tr
        td= val.id
        td= val.name
        td= val.age

在上述代码中,我们使用table来创建表格元素,它包含theadtbody两个子元素。表格的列使用th标签实现。

thead中,我们使用tr标签来创建表格的第一行,其中包含三列标题。

tbody中部分,则使用了each语句来循环生成用户列表的行,其中each val, index in userList表示在userList数组中循环遍历取出每个元素的值和索引。

在循环结构中,我们可以使用val.idval.nameval.age等三个属性,用于填充表格的内容。

第二个例子:创建一个简单的表单

以下是使用Jade创建表单的示例:

form(action="/signup", method="post")
  label(for="username") 用户名
  input(type="text" id="username" name="username")
  label(for="password") 密码
  input(type="password" id="password" name="password")
  input(type="submit" value="登录")

在上述代码中,我们使用 inputlabel 标签来创建表单。其中 input 标签被用来创建表单的各种输入控件,比如文本框、单选框等。而label则用来创建标签,用于描述表单元素。在标签中,使用 for 属性来指定相应的元素。

在以上示例中,我们还演示了如何添加表单的提交地址和请求方式:

  • form(action="/signup", method="post") 表示表单的提交地址为 /signup,提交方式为 POST。
  • input(type="submit" value="登录") 表示提交按钮,按钮的文字为 “登录”。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node前端模板引擎Jade之标签的基本写法 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • vuex中…mapstate和…mapgetters的区别及说明

    Vuex是Vue.js的状态管理库,主要用于管理大型单页应用程序中的状态。在Vuex中,有两种方式可以在组件中获取Vuex中的状态:使用…mapState和…mapGetters方法。本文将详细讲解这两种方法的区别和用途。 …mapState …mapState方法可以将Vuex中的状态映射到组件的计算属性中。它可以帮助我们在组件中访问Vue…

    Vue 2023年5月27日
    00
  • vue axios用法教程详解

    Vue Axios用法教程详解 Vue.js是一个流行的JavaScript框架,用于构建交互式Web应用程序。Axios是一种常用的基于Promise的HTTP客户端,用于通过RESTful API发送HTTP请求。 本教程将详细介绍Vue Axios的用法,包括如何安装、设置和使用。 安装 安装Axios最简单的方法是使用npm,在命令行中运行以下命令:…

    Vue 2023年5月28日
    00
  • 浅谈Vue的加载顺序探讨

    浅谈Vue的加载顺序探讨 在使用Vue时,了解其加载顺序是非常重要的。本文将从Vue实例的创建与挂载、组件的异步与同步加载以及动态组件等角度探讨Vue的加载顺序。 Vue实例的创建与挂载 当我们创建并挂载一个Vue实例时,Vue的加载顺序如下: 首先Vue会调用Vue._init()方法进行实例的初始化,此时尚未渲染DOM。 紧接着Vue会调用$mount(…

    Vue 2023年5月29日
    00
  • Vue指令的钩子函数使用方法

    Vue.js 是一种流行的前端框架,它带有大量的指令。指令允许 Vue 开发人员通过 HTML 绑定操作来扩展 HTML,使开发人员可以自定义指令,然后在 HTML 元素上应用它们。 Vue 中的每个指令都具有一组固定的生命周期钩子。 什么是 Vue 指令钩子函数 Vue 指令钩子函数是一组函数,它们在用户自定义指令的生命周期中被调用。它们提供了一个方法来控…

    Vue 2023年5月28日
    00
  • Vue如何基于es6导入外部js文件

    Vue可以基于ES6语法通过import关键字来导入外部的JavaScript文件,这个功能比起使用传统的<script>标签更为灵活和高效。下面是详细的步骤: 1. 创建Vue项目 首先需要安装Vue脚手架(可以使用npm或yarn进行安装),使用以下命令可以快速创建一个Vue项目: vue create my-project 2. 创建外部J…

    Vue 2023年5月29日
    00
  • vue 内置过滤器的使用总结(附加自定义过滤器)

    下面是详细讲解“vue 内置过滤器的使用总结(附加自定义过滤器)”的完整攻略,过程中将给出两个示例来说明。 1. vue 内置过滤器 Vue 提供了一些内置的过滤器,用于快速展示数据的不同格式。这些过滤器可以在插值表达式和 v-bind 指令中使用。 1.1 文本格式化 {{message | capitalize}}: 将信息的第一个字母大写。 {{mes…

    Vue 2023年5月27日
    00
  • vuex存取值和映射函数使用说明

    下面就为大家介绍一下Vuex存取值和映射函数的使用说明: Vuex存取值和映射函数使用说明 Vuex存取值 Vuex是Vue.js的状态管理库,它允许我们以集中式的方式存储、管理和使用应用中的所有组件之间共享的状态。在Vuex中,所有状态都被存储在一个单一的状态树中,这个状态树是响应式的,它可以在状态改变时自动更新视图。 在Vuex中,我们可以通过gette…

    Vue 2023年5月28日
    00
  • 一文详解如何在vue中实现文件预览功能

    下面我将详细讲解如何在Vue中实现文件预览功能。 一、需求 在Web应用中,我们可能需要上传文件,并在上传后进行预览,以便用户确认上传的文件是正确的。因此,我们需要实现文件预览功能。 二、方案 在Vue中实现文件预览功能,通常有以下两种方案: 方案一:使用第三方插件 Vue社区中已经有许多第三方插件实现了文件预览的功能。我们可以通过npm安装相应插件,并根据…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部