MENU

在 Vue 项目中(vue-cli2,vue-cli3)使用 pug 简化 HTML 的编写

• February 24, 2019 • 前端阅读设置

使用 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.jsmodule 中添加规则:

 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 更像一种插件的使用,但是对于一些新人来说,可能还不习惯这样的操作吧

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=37zrqunps88w4

Last Modified: April 24, 2019
Archives QR Code Tip
QR Code for this page
Tipping QR Code