# output.minifyInternalExports

类型: boolean
CLI: --minifyInternalExports/--no-minifyInternalExports
默认: 在 es、system 格式下或者 output.compact 值为 true 的情况下值为 true,否则为 false

默认情况下,在 es、system 格式下或者 output.compact 值为 true 的情况下该选项值为 true,这意味着 Rollup 会尝试把内部变量导出为单个字母的变量,以便更好地压缩代码。

示例 输入:

// main.js
import './lib.js';

// lib.js
import('./dynamic.js');
export const importantValue = 42;

// dynamic.js
import { importantValue } from './lib.js';
console.log(importantValue);

output.minifyInternalExports: true 时,输出为:

// main.js
import './main-5532def0.js';

// main-5532def0.js
import('./dynamic-402de2f0.js');
const importantValue = 42;

export { importantValue as i };

// dynamic-402de2f0.js
import { i as importantValue } from './main-5532def0.js';

console.log(importantValue);

output.minifyInternalExports: false 时,输出为:

// main.js
import './main-5532def0.js';

// main-5532def0.js
import('./dynamic-402de2f0.js');
const importantValue = 42;

export { importantValue };

// dynamic-402de2f0.js
import { importantValue } from './main-5532def0.js';

console.log(importantValue);

该选项值为 true 时,尽管表面上会导致代码输出变大,但实际上,如果你使用了压缩工具,代码输出会更小。在这种情况下,export { importantValue as i } 理论上会被压缩成,比如 export{a as i},甚至是 export{i},但实际上输出的是 export{ a as importantValue },因为压缩工具通常不会改变导出签名。

Last Updated: 6/14/2023, 8:56:23 AM