ReplaceSource,是webpack里的一项基础数据,用来表示从源码到打包后的代码的一种替换关系的说明:

如图,这个ReplaceSource的replacements由四项内容组成:

一直不明白其中的start和index是表示什么意思

其实转换前的源码是:

import { cube } from './rollA.js';cube(6)

一共是38个字符

35-38区间是cube,被替换成了

"Object(_rollA_js__WEBPACK_IMPORTED_MODULE_0__[/* cube */ "a"])"

所以整体来说,表现出来的replacement就是:

Replacement {start: 35, end: 38, content: "Object(_rollA_js__WEBPACK_IMPORTED_MODULE_0__[/* cube */ "a"])", insertIndex: 3, name: undefined}
insertIndex: 3

表示是第四段代码

而index 负数序号就很奇怪了,这种是属于新增,为什么 end,start之相差一个,而且另外一组的相隔距离是10

有待研究,本文待续