Vite基础配置之 - 分包

本文探讨了Vite中分包技术的重要性,通过实例说明如何在vite.config.js中设置分包规则,避免因频繁更新第三方资源导致的文件过大和加载延迟。通过将第三方库和自定义代码分离,提升网页性能和开发效率。

Vite基础配置之 - 分包

什么是分包呢?它有什么好处呢?

还是举个例子,来回忆一下吧,什么呢?
比如说,我使用了 loadsh.js 的东西,那么我们在打包的时候,就会把 loadsh 相关资源也会打包进来,这个是没有问题的,此时是将 loadsh 的东西 与 我们自己写的相关代码合成一个文件,记住是一个文件。
浏览器是有缓存机制的,当每一次去请求的文件资源时 ( 文件名是没有发生改变的时候,就会读取内存中的数据,而不会重新去服务器获取 )。
分包,我的理解,就是将第三方资源文件单独打成一个文件,自己写的代码打成另一个文件

如果我们不进行分包
我们每一次修改代码之后,进行打包,结果这个文件的内容有 :第三方资源包代码 + 我们自己写的业务代码。
而且,这个文件的名字,每一次都会发生变化的(源代码发生变化),所以当用户去访问我们的页面时,请求的资源文件内容有 : 第三方资源包代码 + 自己的业务代码,而真正需要跟新的只有 自己的业务代码,导致每一次,请求的js文件体积都很大,所以响应时间会长一些

所以我们进行分包,在vite.config.js中的

export default defineConfig({
  build: {
    rollupOptions: {
      output: {
        manualChunks: (filePath) => {
          if (filePath.includes('node_modules')) {
            // 如果这个文件路径,是来自 node_modules的,那么我们就进行发包
            return 'vendor';
          }
        }
      }
    }
  }
});

在这里插入图片描述
结果就像这样,会有两个js文件。

<think>好的,我现在需要帮用户查找关于uni-helper的vite-plugin-uni-manifest插件的使用说明、文档和配置示例。首先,我得回顾用户提供的引用内容,看看有哪些相关信息。 根据引用[1]和[2],用户提到安装这个插件需要使用pnpm,命令是pnpm install @uni-helper/vite-plugin-uni-manifest --save-dev。然后在vite.config.ts中引入并配置插件。引用[1]还给出了一个配置示例,将UniManifest()添加到plugins数组中。这说明基本的安装和配置步骤已经包含在引用中。 接下来,引用[3]提到在manifest.json中添加小程序appid,这可能和插件的功能相关,可能这个插件帮助处理manifest.json的配置,方便真机预览。引用[4]提到了另一个插件vite-plugin-uni-pages,配置分包和主页,虽然不直接相关,但可能uni-helper的插件有类似的配置方式,比如处理页面配置或者分包。 引用[5]是关于解决vite/preload-helper报错的,可能和插件使用中的问题有关,但当前用户的问题是关于uni-manifest的配置,所以暂时不需要关注这个。 用户的需求是获取uni-manifest的使用说明、文档和配置示例。根据引用[1]和[2],安装和基本配置已经明确,但可能需要更详细的配置选项。例如,是否支持自定义manifest路径,或者如何配置不同的环境。但用户提供的引用中没有更多细节,可能需要参考插件的官方文档。 用户可能需要知道如何在vite.config.ts中正确导入和配置插件,如何处理多环境配置(如开发和生产模式),以及插件提供的具体功能,比如自动生成或修改manifest.json的内容。另外,引用[3]提到的小程序appid可能需要在manifest中配置,这个插件是否能自动化或简化这个过程? 可能还需要检查是否有其他配置选项,比如是否支持H5、微信小程序等不同平台的特定配置,或者如何与其它vite插件配合使用。例如,引用[4]中的UniPages插件需要放在Uni插件前面,可能UniManifest也有类似的顺序要求。 此外,文档的链接在引用[1]中提到了GitHub的地址,用户可能需要访问该链接获取详细文档。但由于用户无法直接访问,需要在回答中总结关键点。 总结下来,回答需要包括安装步骤、基本配置示例、可能的配置选项(如manifest路径、环境变量处理)、相关文档链接,以及可能的问题解决方法。同时,根据用户提供的引用,确保引用正确,比如引用[1]和[2]关于安装,引用[3]关于manifest配置的重要性。</think>以下为关于`@uni-helper/vite-plugin-uni-manifest`插件的使用说明和配置详解: --- ### 一、插件功能 主要用于**自动化处理 UniApp 项目的 manifest.json 配置文件**,支持多环境配置和动态生成能力[^1][^3]。 --- ### 二、安装步骤 ```bash # 使用 pnpm 安装(推荐) pnpm install @uni-helper/vite-plugin-uni-manifest --save-dev # 或使用 npm npm install @uni-helper/vite-plugin-uni-manifest -D ``` [^1][^2] --- ### 三、基础配置 在 `vite.config.ts` 中添加以下配置: ```typescript // vite.config.ts import { defineConfig } from 'vite' import Uni from '@dcloudio/vite-plugin-uni' import UniManifest from '@uni-helper/vite-plugin-uni-manifest' export default defineConfig({ plugins: [ // 注意插件顺序,建议放在 Uni 插件前 UniManifest({ // 配置项见下文 }), Uni() ] }) ``` [^4] --- ### 四、核心配置项 | 配置项 | 类型 | 说明 | |----------------|------------|----------------------------------------------------------------------| | `manifestPath` | `string` | 指定 manifest 文件路径,默认 `./src/manifest.json` | | `envDir` | `string` | 环境变量目录,默认与 Vite 配置一致 | | `platform` | `string[]` | 指定目标平台(如 `['mp-weixin', 'h5']`) | --- ### 五、多环境配置示例 1. **创建环境文件**: ```text ├── src/ │ ├── manifest.json # 基础配置 │ ├── manifest.dev.json # 开发环境扩展 │ └── manifest.prod.json # 生产环境扩展 ``` 2. **动态加载配置**: ```typescript // vite.config.ts UniManifest({ manifestPath: './src/manifest.json', envDir: './src', envPrefix: 'MANIFEST_' }) ``` --- ### 六、微信小程序特殊配置 在 `manifest.json` 中必须包含小程序 appid 以支持真机预览: ```json { "mp-weixin": { "appid": "YOUR_APPID" } } ``` --- ### 七、常见问题 1. **环境变量未生效** 检查环境文件命名规范(如 `.env.development`)和变量前缀是否匹配配置项 `envPrefix` 2. **插件顺序问题** 确保 `UniManifest()` 在 `Uni()` 插件之前注册[^4] ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值