在 Vue 项目中(vue-cli2,vue-cli3)使用 pug 简化 HTML 的编写
使用 pug 的原因:
使得 HTML 写起了来更加清晰和快捷
用法:
Vue 的用法没有变化:
<template lang="pug">
transition(name="sider")
div.hello
h3 {{msg}}
p(:style="{color:'#000'}", :htmlData="msg") p label
button(@click="clickMe") clickTest
</template>
要注意的一点是: 标签后面如果有属性(括号内的) 他和括号之间不要加空格,加了空格就会被当成字符串解析
vue-cli 2+ 配置:
下载包:
npm i -D pug pug-html-loader
在build/webpack.base.conf.js 的 module 中添加规则:
module: {
rules: [
{
test:/\.pug$/,
loader: "pug-html-loader"
},
// 省略其他规则
]
}
好了启动或重启项目,即可开心的尝试了
vue-cli 3 配置:
由于 cli 升级到3了,相关配置发生了很大的改变,所以要和2的更改不同:
下载包:
npm i -D pug pug-html-loader pug-plain-loader
和2比多了一个 pug-plain-loader
在 vue.config.js (如果没有就在根目录下新建一个) 添加代码:
module.exports = {
chainWebpack: config => {
config.module.rule('pug')
.test(/\.pug$/)
.use('pug-html-loader')
.loader('pug-html-loader')
.end()
}
}
重启项目即可正常使用;
严格来说, vue-cli3 更像一种插件的使用,但是对于一些新人来说,可能还不习惯这样的操作吧