Javascript ES6仅导入我要求的内容,而不是整个文件

Javascript ES6仅导入我要求的内容,而不是整个文件,javascript,ecmascript-6,import,Javascript,Ecmascript 6,Import,这个问题可能是重复的,但是我的设置和上下文不同 设置: 我使用rollup、rollup插件terser、rollup插件buble、rollup插件json(以及其他清理工具) 我正在制作同一对象的子版本 脚本full.js已经具备了所有功能 //完整版本script-full.js 从“./myClass.js”导入myClass 从“/myObject.js”导入myObject 从“./functions.js”导入其他函数 const props1=['p1','p2'…]//一个

这个问题可能是重复的,但是我的设置和上下文不同

设置

  • 我使用rollup、rollup插件terser、rollup插件buble、rollup插件json(以及其他清理工具)
  • 我正在制作同一对象的子版本
脚本full.js已经具备了所有功能

//完整版本script-full.js
从“./myClass.js”导入myClass
从“/myObject.js”导入myObject
从“./functions.js”导入其他函数
const props1=['p1','p2'…]//一个很长的数组
导出函数doSomeStuff(道具){
//用myObject做些魔术
myObject[prop]=函数(prop){
//与此文件的细节无关或不重要
其他功能(道具)
}
}
导出常量myOps1={
道具:道具1,
fn:doSomeStuff
}
导出默认的新myClass(myOps1)
script-base.js有自己的道具

//基本版本script-base.js
从“./myClass.js”导入myClass
从“./script full.js”导入{doSomeStuff}
const props2=['p1','p2']//一个短数组
导出常量myOps2={
道具:道具2,
fn:doSomeStuff
}
导出默认的新myClass(myOps2)
现在,rollup为我处理索引:

index-full.js

从“./script full.js”导出脚本1
index-base.js

export script2 from./script base.js'
问题

在script-base.js之前,rollup还将把script-full.js中的整个文件包含到编译文件中

问题

  • 有没有办法防止这种不必要的包含?我希望基础版本更轻
  • 我在想也许我应该先做基础版本,然后用完整版本进行扩展,这是更好的方法吗?这是唯一的办法吗

谢谢你

我看不清
dosomething
在做什么。但是我相信,如果
doSomeStuff
逻辑依赖于script-full.js文件作用域的任何其他元素,那么这些元素也将在汇总树摇动过程中包含。编辑后,请选中
doSomeStuff()