基于vue-cli npm run build之后vendor.js文件过大的解决方法

一、背景介绍

在使用vue-cli进行项目开发时,当使用npm run build命令对代码进行打包时,会生成一个vendor.js文件,这个文件包含了所有第三方库的代码,而且这个文件可能会非常大,甚至占据整个打包后文件的很大一部分,这会导致页面加载速度缓慢,影响用户体验。本文将介绍几种解决这个问题的方法。

二、解决方法

  1. 按需引入第三方库

在进行项目开发时,可能只会使用第三方库的部分功能,这时可以考虑按需引入第三方库。具体做法是,在代码中使用import语句引入需要使用的库的特定模块,而不是引入整个库。这样可以减少打包后的vendor.js文件的大小。

比如,只使用了lodash工具库中的_.debounce方法:

import debounce from 'lodash/debounce'

export default {
  methods: {
    search: debounce(function() {
      // 进行搜索
    }, 500)
  }
}

这样,打包后的vendor.js文件就只包含lodash库的一部分代码,而不是整个库的代码,对于减小文件大小非常有帮助。

  1. 使用externals选项排除第三方库

在vue-cli的webpack配置中,可以使用externals选项来排除一些第三方库不被打包进vendor.js文件中。具体做法是,在vue.config.js文件中添加一个配置项:

module.exports = {
  configureWebpack: {
    externals: {
      vue: 'Vue',
      'vue-router': 'VueRouter',
      'element-ui': 'ElementUI'
    }
  }
}

以上述的配置为例,意思是排除vue、vue-router和element-ui这三个库不被打包进vendor.js文件中,而是在页面中引入这些库的cdn链接或者通过npm安装,然后在html页面中通过script标签引入。

注意,使用这种方法进行排除后,需要自己手动在html页面中引入对应的cdn链接或者手动安装第三方库。如果该库在除此项目以外的地方用到了,引入方式也需要修改。

三、总结

基于vue-cli npm run build之后vendor.js文件过大的解决方法主要包括:按需引入第三方库和使用externals选项排除第三方库。两种方法各有优缺点,需要根据具体情况选择合适的方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于vue-cli npm run build之后vendor.js文件过大的解决方法 - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • macroot用户初始密码设置

    MacRoot用户初始密码设置的完整攻略 在MacOS系统中,root用户是具有最高权限的用户,可以执行系统级别的操作。在安装MacOS系统时,需要设置root用户的初始密码。本文将详细讲解如何设置MacRoot用户的初始密码,并提供两个示例说明。 1. 概述 在MacOS系统中,可以使用以下命令设置root用户的初始密码: sudo passwd root…

    other 2023年5月9日
    00
  • java如何确定一个链表有环及入口节点

    确定一个链表是否存在环及环的入口节点是链表中常见的问题,Java中可以通过快慢指针和哈希表两种方式来解决。 快慢指针法 快慢指针法的主要思想是,使用两个指针,一个指针每次移动两个结点,一个指针每次移动一个结点,两个指针同时从链表的头结点出发,如果存在环,则两个指针必定会相遇。然后再用两个指针分别从相遇点和头结点出发,每次移动一个结点,最终两个指针相遇的结点即…

    other 2023年6月27日
    00
  • Vue中自定义标签及其使用方式

    我们来详细讲解一下“Vue中自定义标签及其使用方式”的完整攻略。 什么是自定义标签? 在Vue中,我们可以通过注册全局或局部组件来自定义标签。自定义标签实际上就是自定义组件,我们可以通过使用这些自定义标签快速构建页面。 如何注册全局组件? 通过Vue.component(tagName, options)方法可以创建一个全局组件。其中tagName为组件名称…

    other 2023年6月25日
    00
  • 使用递归算法结合数据库解析成Java树形结构的代码解析

    使用递归算法结合数据库解析成Java树形结构的代码解析,可以分为以下步骤: 步骤一:创建数据库 首先需要有一个数据库,可以使用MySQL等关系型数据库或者MongoDB等非关系型数据库。数据库中包含我们所需要的数据表,每个数据表可以对应树形结构中的一个节点。 步骤二:编写Java程序连接数据库 使用Java程序连接所创建的数据库,通过JDBC等相关工具和AP…

    other 2023年6月27日
    00
  • vue中缓存组件keep alive的介绍及使用方法

    Vue中缓存组件Keep-Alive的介绍及使用方法 在Vue中,我们经常需要在不同的组件之间进行切换,这时候基本上是通过销毁旧组件并渲染新组件的方式来实现的。然而,在某些情况下,我们可能需要将某些组件缓存起来,以便在稍后再次使用。这时候,Vue中的Keep-Alive组件就派上用场了。 什么是Keep-Alive组件 Keep-Alive是Vue.js的一…

    other 2023年6月27日
    00
  • CentOS 7.0关闭默认防火墙启用iptables防火墙

    CentOS 7.0关闭默认防火墙启用iptables防火墙的完整攻略 CentOS 7.0默认使用firewalld作为防火墙,但是有些情况下需要使用iptables作为防火墙,本文将介绍如何关闭默认防火墙并启用iptables防火墙。 步骤 1. 关闭默认防火墙 首先需要关闭默认的防火墙firewalld,使用以下命令: systemctl stop f…

    other 2023年5月5日
    00
  • 开机系统准备工具如何关闭

    当然,我很乐意为您提供有关“开机系统准备工具如何关闭”的完整攻略。以下是详细的步骤和两个示例: 1 关闭开机系统准备工具 开机系统准备工具是操作系统的一个功能,它可以帮助您在计算机启动时进行故障排除和修复。如果您不需要使用此功能,可以通过步骤关闭它: 1.1 使用系统配置工具 可以使用系统配置工具来关闭开机系统准备工具。以下是步骤: 打开“运行”对话框,方法…

    other 2023年5月6日
    00
  • mac安装java配置

    Mac安装Java配置 Java是一种跨平台的编程语言,拥有广泛的应用。如果你想要在Mac电脑上运行Java程序,你需要先安装Java运行环境,并进行相关的配置。本文将会介绍Mac系统上Java的安装、配置、验证等详细步骤。 步骤1:下载Java运行环境 访问Oracle公司的官方网站下载Java运行环境,选择与你电脑系统版本相对应的版本,如macOS 11…

    其他 2023年3月28日
    00
合作推广
合作推广
分享本页
返回顶部