externals 中使用 tree shark
对于一些大家伙比如 antd
,如果你只需要使用几个组件,却将整个 antd 包都导出的话,这有点不理想。我们希望的应该是用到什么组件,导出什么组件,externals.ts
支持 tree shark,比如我们只用到了 antd
中的 Button
组件,那么你可以只导出 Button
typescript
import { Button } from "antd";
export default {
antd: { Button },
};
import { Button } from "antd";
export default {
antd: { Button },
};
WARNING
如果使用你扩展的用户并不关心文件大小,或者你也觉得无所谓,那么你可以不用 tree shark,因为它确实有些麻烦,比如此时我们又在 injectScript 中使用到了 Modal
组件,那么你还必须再跑到这个文件夹中导出 Modal