npm 包 assembly-webpack-plugin 使用教程

阅读时长 4 分钟读完

前言

在前端开发中,构建工具 webpack 已经成为了必选项。而使用 webpack 进行构建的时候,很多时候需要手动引用一些公共的库或者组件。但是手动引用过于繁琐,不利于维护。而 assembly-webpack-plugin 这个 npm 包能够很好的解决这个问题。

assembly-webpack-plugin 是一个能够根据指定的规则,自动将多个 js/css 文件合并成一个文件,并且在构建的时候自动引入这个文件的 webpack 插件。接下来我们将深入探讨该插件的使用方法。

安装

在使用之前,需要通过 npm 安装这个插件。可以使用如下的命令:

配置

在安装之后,我们需要在 webpack 配置文件中配置插件实例。这里插件实例的参数可以通过配置文件进行设置。以下为一个示例:

-- -------------------- ---- -------
----- -------------- - -----------------------------------

-------------- - -
  -- -------
  -------- -
    --- ----------------
      ----------- -------------------- --------
      --------- -------------------------------
      ----------- --------- -------------
      ---------- -----
    --
  -
-

该配置项不包含 webpack 的其他配置项,仅显示了如何添加 AssemblyPlugin。

  • outputPath:合并后文件输出的路径;
  • fileName:合并后文件名;
  • dependency:规定需要合并的包或文件组;
  • sourceMap:是否生成 SourceMap。

示例

有如下的结构:

-- -------------------- ---- -------
- -----------------
- ------     -- -----
    - --------
    - --------
- -------     -- -----
    - --------
    - ------------
- ----       -- -------
    - ------
    - --------

假如我们需要合并 React 和 React-Dom,生成的文件放在 Theme 文件夹里,文件名为 vendor.js。符合要求的代码在 webpack.config.js 文件中有了如下定义:

-- -------------------- ---- -------
----- ---- - ----------------
----- -------------- - -----------------------------------

-------------- - -
  ----- --------------
  ------ -----------------
  ------- -
    --------- ---------------------------------------------
    ----- ----------------------- -------
  --
  -------- -
    --- ----------------
      ----------- -------------------- ---------
      --------- ------------
      ----------- --------- -------------
      ---------- -----
    --
  -
--

当你打包的时候,就可以看到 React 和 React-Dom 被合并到了 vendor.js 中。

-- -------------------- ---- -------
-- ---------------
----- --------------------
--------------------------------
  ---- ----------------- ----
  ----------------------------
--- -- ------ ------- ----- --
----- ----------------- -------- -------------------- -
---
    ----- ------------------------
    ----------------------------------
      ---- --------------------- ----
      ------------------------------
    --- -- ------ ------- ----- --
    ----- ----------------- -------- -------------------- -
    ---
    ---

-- --

---- ----------------------- -----------------------------------------------------

- ------------------------------------------------------------------------------ --------
------------------------------------------------------------------------------------------------------------------------
纠错
反馈