How to debug loader plugin in webpack project

How to debug loader plugin in webpack project

Recently, when I was learning how to use webpack, I found that the webpack-replace-loader configuration regular expression did not work. After debugging the plug-in, I found that the search key value did not support regular expression writing. Later, I switched to the string-replace-loader plug-in. The search key value of this loader supports regular expression writing, and the problem was solved. Here is the debugging method of loader:

First you need to prepare the node environment

Step 1: Download and install node-nightly globally

npm install -g --save-dev node-nightly

Step 2: Add debugging commands

 "node-nightly": "node-nightly --inspect-brk ./node_modules/webpack/bin/webpack.js",

Step 3: npm run node-nightly in the command line

Step 4: Open Google Chrome and enter chrome://inspect/#devices in the URL

Click inspect to enter the debugging page

Step 5: Find the index.js file of loader in node_module in vscode, and add debugger in the module.exports function;

At this point, you can debug the corresponding loader script as you normally debug js.

This is the end of this article on how to debug loader plugins in webpack projects. For more information about webpack debugging loader plugins, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • Electron-vue uses webpack to package multiple pages of entry files
  • Implementation of webpack code fragmentation
  • 80 lines of code to write a Webpack plugin and publish it to npm
  • Implementation steps for building multi-page programs using Webpack
  • 50 lines of code to implement Webpack component usage statistics
  • webpack -v error solution

<<:  Detailed explanation of the solution to the failure of VMware to open the module diskearly

>>:  Introduction to using MySQL commands to create, delete, and query indexes

Recommend

JavaScript message box example

Three types of message boxes can be created in Ja...

HTML meta explained

Introduction The meta tag is an auxiliary tag in ...

Solution to the problem of invalid line-height setting in CSS

About the invalid line-height setting in CSS Let&...

Common array operations in JavaScript

Table of contents 1. concat() 2. join() 3. push()...

Detailed explanation of MySQL sql_mode query and setting

1. Execute SQL to view select @@session.sql_mode;...

CentOS7 firewall and port related commands introduction

Table of contents 1. Check the current status of ...

Problem record of using vue+echarts chart

Preface echarts is my most commonly used charting...

Mysql master/slave database synchronization configuration and common errors

As the number of visits increases, for some time-...

Introduction to HTML Chinese Character Encoding Standard

In HTML, you need to specify the encoding used by...

Script example for starting and stopping spring boot projects in Linux

There are three ways to start a springboot projec...

Analyze MySQL replication and tuning principles and methods

1. Introduction MySQL comes with a replication so...

19 MySQL optimization methods in database management

After MySQL database optimization, not only can t...

How to solve the problem of forgetting the root password of Mysql on Mac

I haven't used mysql on my computer for a lon...