Friendly-errors-webpack-plugin 介绍

Friendly-errors-webpack-plugin识别某些类别的webpack错误,并清理,聚合和优先级,以提供更好的开发人员体验。

我们运行nodejs 可以看到错误信息如下:

安装入门

npm install friendly-errors-webpack-plugin --save-dev

基本用法

只需将FriendlyErrorsWebpackPlugin添加到Webpack配置中的插件部分即可。

var FriendlyErrorsWebpackPlugin = require('friendly-errors-webpack-plugin');
 
var webpackConfig = {
  // ...
  plugins: [
    new FriendlyErrorsWebpackPlugin(),
  ],
  // ...
}

关闭错误

您需要通过将webpack config quiet选项设置为true来关闭所有错误日志记录。

app.use(require('webpack-dev-middleware')(compiler, {
  quiet: true,
  publicPath: config.output.publicPath,
}));

如果您使用webpack-dev-server,webpack的devServer选项中有一个设置:

// webpack config root
{
  // ...
  devServer: {
    // ...
    quiet: true,
    // ...
  },
  // ...
}

如果使用webpack-hot-middleware,则可以通过将log选项设置为false来完成。你可以做一些这样的事情,具体取决于你的设置:

app.use(require('webpack-hot-middleware')(compiler, {
  log: false
}));

选项

您可以将选项传递给插件:

 

new FriendlyErrorsPlugin({
// 运行成功
compilationSuccessInfo:{
message:['你的应用程序在这里运行http:// localhost:3000'],
notes:['有些附加说明要在成功编辑时显示']
},
// 运行错误
onErrors:function(severity,errors){
//您可以收听插件转换和优先级的错误
//严重性可以是'错误'或'警告'
},
//是否每次编译之间清除控制台
//默认为true
clearConsole:true,

//添加格式化程序和变换器(见下文)
additionalFormatters: [],
additionalTransformers: []
})

添加桌面通知

该插件没有桌面通知的原生支持,需要引入node-notifier,这样就可以了 。

var NotifierPlugin = require('friendly-errors-webpack-plugin');
var notifier = require('node-notifier');
var ICON = path.join(__dirname, 'icon.png');
 
new NotifierPlugin({
    onErrors: (severity, errors) => {
      if (severity !== 'error') {
        return;
      }
      const error = errors[0];
      notifier.notify({
        title: "Webpack error",
        message: severity + ': ' + error.name,
        subtitle: error.file || '',
        icon: ICON
      });
    }
  })
]

API

从webpack错误中提取相关信息。 这是通过这里的插件完成的
将变换器应用于所有错误,以识别和注释众所周知的错误并为其提供优先级
如果没有抛出错误,则仅获取最高优先级错误或最高优先级警告
将格式化程序应用于所有带注释的错误

Webpack友好的错误提示插件friendly-errors-webpack-plugin的更多相关文章

  1. Jquery 错误提示插件

    这是一个简单的输入框错误提示插件,可拓展! .jq-error{ font-size:12px; min-width:150px; width:auto; max-width:350px; line- ...

  2. 谷歌浏览器javascript错误提示插件

    JavaScript-Errors-Notifier_v2.1.7 下载地址 安装方法: http://chromecj.com/utilities/2014-09/181.html 设置方式:

  3. jQuery Label Better – 友好的表单输入框提示插件

    jQuery Label Better 帮助你标记您的表单输入域,带有美丽的动画效果而且不占用空间.这个插件的独特之处在于所有你需要做的就是添加一个占位符文本,只有当用户需要它的时候才显示标签. 您可 ...

  4. sublime 支持php语法错误提示的插件

    求一个好用的sublime 支持php语法错误提示的插件.我装过sublimelinter,但是有时候出现错误也不会提示. 可以试试http://cs.sensiolabs.org/ 这个看哦它有对应 ...

  5. spring boot: GlobalDefaultExceptionHandler方法内的友好错误提示,全局异常捕获

    spring boot: GlobalDefaultExceptionHandler方法内的友好错误提示,全局异常捕获 当你的某个控制器内的某个方法报错,基本上回显示出java错误代码,非常不友好,这 ...

  6. 设置jQuery validate插件错误提示位置

    参照上一篇bootstrap布局注册表单 使用校验插件默认位置显示提示信息,发现错误提示信息换行了,由于增加了提示信息,表单显示高度也增加了,如下 默认提示信息位置代码为 将错误提示设置其显示在右边, ...

  7. 谷歌插件请求ci 解决CI框架的Disallowed Key Characters错误提示

    用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示.有人说 url 里有非法字符.但是确定 url 是纯英文的,问题还是出来了.但清 ...

  8. 2016 正确 sublime安装PHPcs PHPcodesniffer代码规范提示插件,修正网上部分不详细描述

    对你有助请点赞,请顶,不好请踩------送人玫瑰,手留余香!-------------------14:37 2016/3/212016 正确 sublime安装PHPcs PHPcodesniff ...

  9. 【vue】vue +element 搭建及开发中项目中,遇到的错误提示

    1. import Layout from '@/views/layout/Layout'; export default [ { // 配置路由,当路径为'/activePublic',使用组件ac ...

随机推荐

  1. python defaultdict模块

    from collections import defaultdict '''默认值字典'''d = defaultdict(lambda :123)print(d)print(type(d))pri ...

  2. 能ping通虚拟机中的Ubuntu,使用XShell连不上

    1.在宿主机上telnet 虚拟机ip  22如果显示端口无法接通,说明你的/etc/init.d/sshd 是stop或者是异常的. 2.如果没有sshd服务,使用" sudo apt-g ...

  3. Keil MDK5的ITM调试

    https://blog.csdn.net/burgesskzg/article/details/77100453

  4. Linux(Ubuntu)使用日记------Mysql编码(utf-8)的设置

    Mysq版本:5.7.21 操作系统:Linux(Ubuntu) 整个操作的基本思路如下(包括问题的解决思路,想要直接解决问题的可以先看最后的命令总结) 检查mysql编码 找到Mysql的配置文件 ...

  5. springcloud 设置feign超时时间

    转载网址:http://www.pianshen.com/article/187038775/

  6. 「CF#554 div2」题解

    A 水题一道. 题目的大致意思就是:给你两个集合,求集合间有多少数对和是奇数. 题解,开\(4\)个桶后,求一个\(min\)就可以了. #include <bits/stdc++.h> ...

  7. 微信退款验证证书时报错:length too long

    由于springboot文件加载时,默认会加载resources目录下的文件,而微信的证书刚好在它之下,加载时就会报这个错误.解决办法: 在pom.xml文件中,添加如下代码: <plugin& ...

  8. 洛谷P3268 [JLOI2016]圆的异或并(扫描线)

    扫描线还不是很熟啊--不管是从想的方面还是代码实现的方面-- 关于这题,考虑一条平行于\(y\)轴的扫描线从左到右扫描每一个圆,因为只有相离和内含两种关系,只用在切线处扫描即可 我们设上半圆为1,下半 ...

  9. logstash 自动重新加载配置

    自动重新加载配置 为了可以自动检测配置文件的变动和自动重新加载配置文件,需要在启动的时候使用以下命令: ./bin/lagstash -f configfile.conf --config.reloa ...

  10. Apache POI 示例

    Apache POI 3.17 Javadocs 用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office(Excel.WO ...