Umi-Plugin-Dll:提高前端开发效率的利器

在前端开发中,有大量的第三方库或工具需要使用,例如 UI 组件库、数据可视化库、语言转换器等,这些库可能会涉及到多个页面或组件的调用。然而,由于每次打包时都需要将它们一起打包对应的文件一起打包,这就会导致构建过程变得笨重且耗时较长。

为了解决这个问题,我们可以使用 Umi-Plugin-Dll 来创建一个动态链接库(Dll),以使特定模块在构建时不需要重新打包,从而加快构建速度。本文将介绍 npm 包 umi-plugin-dll 的使用方法。

什么是 umi-plugin-dll

Umi-Plugin-Dll 是一个 Umi.js 的插件,能够缩短构建时间并提高前端开发效率。使用 umi-plugin-dll 创建一个动态链接库,就能将依赖库从应用程序代码中分离出来。这样,在每次构建时,构建系统不再需要重新构建这些库,而只需要拆分并使用已生成的 Dll。

安装 Umi-Plugin-Dll

在 Umi 项目中安装 umi-plugin-dll,使用以下命令:

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

如何使用 Umi-Plugin-Dll

配置文件

安装了 umi-plugin-dll 后,在项目根目录的 .umirc.js 文件中进行配置,代码如下:

------ ------- -
  -------- -
    ------------------ -
      -------- ------------------
      -------- --------- -------------
    ---
  --
--
  • exclude 表示不需要被打包的包名。
  • include 表示需要被打包的包名。

输出 Dll

运行以下命令,将生成 Dll 目录及 Dll 文件。

- --- ---

命令运行后,可在项目根目录中看到 Dll 目录及 Dll 文件。

引用 Dll

在项目中引用 Dll 十分简单,只需要在 webpack.config.js 配置文件中配置即可:

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

其中,manifest.json 文件是 dllPlugin 生成的描述文件,包含了 dll 模块名和对应的文件路径等内容。

配置

Umi-Plugin-Dll 还提供了以下配置项:

  • library,库的名称,默认为 manifest.name。
  • path,存放 manifest.json 的绝对路径,默认为 dll/${library}-manifest.json
  • entry,指定需要打包的入口文件。

示例代码

下面是一个 Umi-Plugin-Dll 的示例项目,以 React 为例:

安装 umi-plugin-dll

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

在 .umirc.js 中配置

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

创建入口文件

在项目根目录创建 src/index.js 文件,并输入以下内容:

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

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

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

在 webpack.config.js 中配置

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

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

生成 Dll

在终端中运行以下命令来生成 Dll:

--- ---

运行项目

在终端中运行以下命令来启动项目:

--- ---

结束语

在实际开发中,使用 umi-plugin-dll 能够显著提高构建效率,特别是对于多页面应用或者使用了大量第三方库的项目来说,更是如此。除此之外,本文还提供了一个具体的示例,帮助读者更好地理解 umi-plugin-dll 的用法。希望读者能够学到一些有用的知识,为前端开发的高效工作提供帮助。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedad9bb5cbfe1ea0610ca8


猜你喜欢

  • 前端类技术文章:npm 包 saddle-up 使用教程

    在前端开发中,我们经常需要操作当前页面中的 DOM 元素。为了方便地获取和修改 DOM 元素的值,我们可以使用一个叫做 saddle-up 的 npm 包。本文将介绍如何使用 saddle-up 包,...

    4 年前
  • npm 包 @shopify/react-server 使用教程

    前言 在现代 web 应用开发中,前端框架扮演着越来越重要的角色,React 是其中的一种主流框架。借助 React,我们可以高效地构建复杂的用户界面,但在实际应用中,一个好的用户界面不仅是可视化界面...

    4 年前
  • npm 包 @shopify/stylelint-plugin 使用教程

    在前端开发中,代码规范的作用越来越被重视。我们可以使用一些工具来帮助我们检测代码规范的问题,这里我们介绍一个工具,即 @shopify/stylelint-plugin。

    4 年前
  • npm 包 @shopify/translation-platform-utilities 使用教程

    背景介绍 在前端开发中多语言处理是很常见的任务,虽然有些人依赖于后端返回不同语言的 html 页面或通过字段从后端传递数据来处理不同语言,但这种方法存在很大的局限性,如果所有的多语言处理都依赖后端的话...

    4 年前
  • npm包@shopify/typescript-configs使用教程

    前言 TypeScript作为现代前端项目开发不可或缺的一部分,已经逐渐成为了前端开发者们的首选语言。而在使用TypeScript时,对于代码规范的统一和管理也是非常重要的一部分。

    4 年前
  • npm 包 @shopify/integrity-sha-utils 使用教程

    在前端开发中,数据的安全性是至关重要的。而哈希摘要是一种能够保障数据完整性和安全性的方法。npm 包 @shopify/integrity-sha-utils 就是一个很好的工具,它提供了 SHA-2...

    4 年前
  • npm 包 @shopify/webpack-asset-metadata-plugin 使用教程

    前言 在前端开发中,使用 webpack 进行代码打包是必不可少的一个环节。而 @shopify/webpack-asset-metadata-plugin 这个 npm 包,则提供了一种快速、简便地...

    4 年前
  • npm 包 @shopify/webpack-asset-sri-hash-verification-plugin 使用教程

    随着前端应用的复杂度不断提高,我们需要一些更加安全和可靠的方式来保护我们的应用。SRI(Subresource Integrity)就是这样一种方式。SRI 允许我们使用一个哈希值来保证外部资源的完整...

    4 年前
  • npm包 @shopify/webpack-ignore-typescript-export-warnings-plugin 使用教程

    在前端开发过程中,使用TypeScript进行开发时,有时可能会出现TypeScript导出类型不一致的警告。这些警告可能会对我们的开发造成影响,因此我们需要一种方法来忽略这些警告。

    4 年前
  • npm 包 @shopify/webpack-no-react-jsx-loader 使用教程

    在前端开发中,许多项目都使用了 React 框架来构建 UI 界面。但是,有时候我们并不需要使用 React 的全部功能,只需要使用 React 提供的 virtual DOM 和组件化能力等部分功能...

    4 年前
  • npm 包 @shopify/webpack-no-typescript-ts-loader 使用教程

    在前端开发中,Webpack 是一个非常重要的工具。而 TypeScript 的流行更是让很多人选择使用这种静态类型的 JavaScript 趋势。尽管如此,仍有很多人喜欢仅使用 JavaScript...

    4 年前
  • npm 包 @shopify/webpack-persisted-graphql-plugin 使用教程

    概述 @shopify/webpack-persisted-graphql-plugin 是一个 Webpack 插件,它可以帮助前端开发人员在开发过程中使用 GraphQL 进行 API 数据查询,...

    4 年前
  • npm 包 @shopify/webpack-runtime-sri-verification-plugin 使用教程

    简介 在前端开发中,我们经常需要引用第三方的 JavaScript 或 CSS 文件,以实现一些复杂功能。然而,有些恶意攻击者可能会利用这些文件来注入恶意代码,从而危害到用户的浏览器安全。

    4 年前
  • npm 包 @shopify/webpack-section-focus-loader 使用教程

    前言 前端工程化的发展让我们的项目多了很多自动化的工具,其中 webpack 作为最为流行的打包工具之一,被众多前端开发者所认可。而 @shopify/webpack-section-focus-lo...

    4 年前
  • npm 包 graphql-config-utilities 使用教程

    GraphQL 是一种强类型的查询语言,它允许前端和后端通过一个定义好的 schema 进行沟通。随着 GraphQL 在前端开发中的应用越来越广泛,使用它管理大型项目的配置成了一件非常麻烦的事情。

    4 年前
  • npm 包 graphql-mini-transforms 使用教程

    前言 GraphQL 是一种用于 API 的查询语言,它可以高效地获取所需的数据,并且具有描述性强、类型安全、易于缓存等优点,因此在前端领域有着广泛的应用。然而,GraphQL 的语法相对于 REST...

    4 年前
  • npm 包 graphql-typed 使用教程

    GraphQL 是一种新兴的查询语言,用于 API 的开发,它使得数据的获取更加准确,可控,可扩展。如果你想在前端领域使用 GraphQL,那么 npm 包 graphql-typed 就是你需要掌握...

    4 年前
  • npm 包 graphql-typescript-definitions 使用教程

    GraphQL 是一种优秀的查询语言,在前端开发中受到了广泛的应用。使用 TypeScript 可以让代码更加的规范和易于维护。在这篇文章中,我们将介绍如何使用 npm 包 graphql-types...

    4 年前
  • npm 包 graphql-tool-utilities 使用教程

    什么是 graphql-tool-utilities? graphql-tool-utilities 是一个 npm 包,可以帮助你更好地使用 graphql 工具集。

    4 年前
  • npm 包 graphql-validate-fixtures 使用教程

    GraphQL 在前端开发领域中越来越受欢迎。在实际开发中,我们通常使用一些工具来验证我们的 GraphQL 查询和变异是正确的。graphql-validate-fixtures 是一款优秀的 np...

    4 年前

相关推荐

    暂无文章