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

摘要:
使用pug的原因:它使HTML更清晰、更快。用法:Vue的用法没有改变:<templatelang=“pug”>transition(name=“side”)div Hello3{{msg}}p(:style=“{color:'#000'}”,:htmlData=“msg”)plabelbutton(@click=“clickMe”)clickTest注意

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

免责声明:文章转载自《在 Vue 项目中(vue-cli2,vue-cli3)使用 pug 简化 HTML 的编写》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇初级Oracle和SQL学习者的学习笔记。韩顺平-玩转oracle。HDFS常用命令总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

五十六 SMTP发送邮件

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。 Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。 首先,我们来构造一个最简单的纯文本邮件: from email.mime.text import MIMEText msg =...

Vue实现Rate组件(星星评分)

这个功能就类似于某宝在购物之后,对商品进行评价 先看一下效果 那么实现这个功能也很简单,新建一个my-rate组件,然后上代码 1 <template> 2 <div :class="{'disabled':disabled}"> 3 <span v-if="showText" class="text"&g...

Android使用WebView的简单使用

layout下 : webviewdemo.xml 文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pa...

Vue根据浏览器窗体变化动态设置Element Table组件的最大高度

Vue根据浏览器窗体变化动态设置Element Table组件的最大高度 这个场景应该经常遇到,比如说在一个页面有一个table,想让他数据过多的时候自动出现滚动条而不至于冲到屏幕外被隐藏,如果表格下面还有换页的话,换页直接冲没了,所以需要计算这个table表格的最大高度。 使用的是饿了吗Element组件库的table组件,有一个属性是 max-heig...

《转》vue 常用ui组件

vux github ui demo:https://github.com/airyland/vux Mint UI 项目主页:http://mint-ui.github.io/#!/zh-cndemo:http://elemefe.github.io/mint-ui/#/github地址:https://github.com/ElemeFE/mint-...

无废话ExtJs 入门教程十六[页面布局:Layout]

首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distribution;layout] 对事物的全面规划和安排,布:陈设;设置。 我对布局理解是“把**东西放在**位置显示”[动词]。 ok,我们这节课就讲一下怎么样把 ExtJs 的组件,放到我们想放置的位置。 一、常用布局 (1)ContainerLayout:默认布局方式,其他...