Rollup常用配置及插件

常用配置

input
// 入口文件
input: 'bundle.js'

output

// 打包配置
// format: amd, cjs, es, iife, umd, system
// dir 打包输出目录
// entryFileNames entry-[name].js  动态打包
// sourcemap 
// file ${name}.umd`}.js
// globals 定义全局变量命名

plugins

[
  url(),
  // xxx..
]

external

// 定义需要使用的外部模块
export default {
   
  ...,
  external: ['jquery'],
  output: {
   
    format: 'iife',
    name: 'MyBundle',
    globals: {
   
      jquery: '$'
    }
  }
};

import $ from 'jquery';

插件

@rollup/plugin-url

将文件作为数据 URI 或 ES 模块导入

// 使用:
import url from '@rollup/plugin-url';
plugins: [url()]

// src/index.js
import svg from './image.svg';
console.log(`svg contents: 
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Rollup和Webpack是两种常用前端模块打包工具,它们有一些区别和各自的优劣势。 1. 功能定位: - RollupRollup是一个面向ES模块的打包工具,专注于将多个模块打包成一个或多个输出文件。它的设计目标是生成更小、更高效的输出文件。 - Webpack:Webpack是一个更通用的模块打包工具,可以处理各种类型的模块(包括CommonJS、AMD等),并且提供了更丰富的功能,如代码分割、热模块替换等。 2. 构建方式: - RollupRollup采用递归方式进行构建,将模块打包成一个或多个输出文件,并且通过Tree Shaking等优化技术来移除未使用的代码,生成更小的输出文件。 - Webpack:Webpack采用依赖图的方式进行构建,根据模块之间的依赖关系进行打包,并且提供了丰富的配置选项和插件系统,可以灵活地定制打包过程。 3. 生态系统: - RollupRollup的生态系统相对较小,但是在处理ES模块方面更加强大和高效。它适用于构建库或组件,尤其是针对现代浏览器的项目。 - Webpack:Webpack拥有庞大的生态系统和活跃的社区,支持更多的插件和工具。它适用于构建复杂的应用程序,可以处理各种类型的模块和资源。 4. 性能表现: - Rollup:由于Rollup专注于生成更小、更高效的输出文件,因此在某些情况下可以获得更好的性能表现,尤其是在处理大型项目时。 - Webpack:Webpack提供了更多的功能和灵活性,但在处理大型项目时可能会有一些性能损耗。然而,Webpack通过各种优化策略(如代码分割、按需加载等)来提高性能。 综上所述,选择使用Rollup还是Webpack取决于项目的需求和特点。如果你的项目主要使用ES模块,并且注重性能和体积优化,那么Rollup可能是一个更好的选择。如果你需要更多的功能和灵活性,并且处理各种类型的模块和资源,那么Webpack可能更适合你的项目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值