Movatterモバイル変換


[0]ホーム

URL:


@rushstack/webpack-plugin-utilities
TypeScript icon, indicating that this package has built-in type declarations

0.4.87 • Public • Published

Installation

npm install @rushstack/webpack-plugin-utilities --save

Overview

This is a collection of utilities for writing webpack plugins

Usage

VersionDetection

import{VersionDetection}from"@rushstack/webpack-plugin-utilities"classMyExampleWebpackPlugin{constructor(){this.pluginName="MyExampleWebpackPlugin"}apply(compiler){if(VersionDetection.isWebpack3OrEarlier(compiler)){thrownewError(`This plugin does not support webpack 3 or below.`)}constisWebpack4=VersionDetection.isWebpack4(compiler);if(isWebpack4){compiler.hooks.compilation.tap(this.pluginName,(compilation)=>{// ....});}else{compiler.hooks.compilation.tap(this.pluginName,(compilation)=>{// ...});}}}

Testing

getTestingWebpackCompiler

import{getTestingWebpackCompiler}from"@rushstack/webpack-plugin-utilities"describe("MyPlugin",()=>{it("should run",async()=>{conststats=awaitgetTestingWebpackCompiler("./src/index.ts");expect(stats).toBeDefined();});});

getTestingWebpackCompiler with additional configuration

If you want to pass in additional configuration to the webpack compiler, you can pass it in as the second parameter togetTestingWebpackCompiler.

import{getTestingWebpackCompiler}from"@rushstack/webpack-plugin-utilities"describe("MyPlugin",()=>{it("should run",async()=>{conststats=awaitgetTestingWebpackCompiler("./src/index.ts",{mode:"production",});expect(stats).toBeDefined();});});

getTestingWebpackCompiler with virtual filesystem

If you want to be able to read, analyze, access the files written to the memory filesystem,you can pass in a memory filesystem instance to thememFs parameter.

import{getTestingWebpackCompiler}from"@rushstack/webpack-plugin-utilities"import{createFsFromVolume,Volume,IFs}from"memfs"importpathfrom"path"describe("MyPlugin",()=>{it("should run",async()=>{constvirtualFileSystem:IFs=createFsFromVolume(newVolume());conststats=awaitgetTestingWebpackCompiler(`./src/index.ts`,{},virtualFileSystem);expect(stats).toBeDefined();expect(virtualFileSystem.existsSync(path.join(__dirname,"dist","index.js"))).toBe(true);});});

Links

@rushstack/webpack-plugin-utilities is part of theRush Stack family of projects.

Readme

Keywords

none

Package Sidebar

Install

npm i @rushstack/webpack-plugin-utilities

Weekly Downloads

9,511

Version

0.4.87

License

MIT

Unpacked Size

119 kB

Total Files

18

Last publish

Collaborators

  • rushstack-admin
  • odspnpm
  • octogonz

[8]ページ先頭

©2009-2025 Movatter.jp