Vue 的模板语法中lang=pug用法

Pug 是一种高效的、简洁的模板引擎,它使用缩进、可选的括号和强制缩写等语法规则来简化 HTML/CSS/JS 的书写。Pug 简化了模板的书写,可以通过缩进来表示嵌套关系,使用小括号包裹指令和属性,并且使用换行符来分隔标签,使得代码层次更加清晰有序。

举个例子,以下是一个常见的 HTML 表单:

```html
<form action="/submit" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username">

<label for="password">Password:</label>
<input type="password" id="password" name="password">

<button type="submit">Submit</button>
</form>
```

而使用 Pug 来书写同样的表单,可以写成:

```pug
form(action="/submit", method="post")
label(for="username") Username:
input(type="text", id="username", name="username")

label(for="password") Password:
input(type="password", id="password", name="password")

button(type="submit") Submit
```

可以看到,Pug 将 HTML 中的标签、属性、内容等分拆开来,用缩进来表示嵌套关系,并用小括号将属性和指令包裹,以便于阅读和维护。

 

在 Vue 中使用 Pug 模板引擎,需要先安装依赖:

```
npm install -D pug pug-plain-loader
```

安装完成后,在 Vue 的单文件组件中,可以使用 `<template lang="pug">` 定义 Pug 模板。例如:

```vue
<template lang="pug">
div
p Hello, {{ name }}!
</template>

<script>
export default {
data() {
return {
name: 'world',
};
},
};
</script>
```

其中,`<template lang="pug">` 中的 Pug 代码将被编译为渲染函数,并在组件实例的 `render()` 方法中使用。

如果使用 Webpack 构建工具,可以在 `webpack.config.js` 文件中配置 Pug:

```js
module.exports = {
// ...
module: {
rules: [
{
test: /\.pug$/,
loader: 'pug-plain-loader',
},
],
},
};
```

这样就可以在 Vue 单文件组件中使用 Pug 模板引擎了。在使用时,需要注意缩进和换行符的使用,确保代码正确编译和渲染。同时,Pug 支持内置的 Vue 语法和指令,可以使用 `v-` 前缀来表示,例如 `v-if`、`v-for` 等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章