跨端模块共享比例提高后为何可能同时放大包体与运行时初始化
简答题困难358 次浏览
参考答案与解析
核心结论:共享代码比例高不等于最终产物更小或启动更快。面向Web、小程序、原生容器、React Native、Flutter和多种WebView内核时,共享层若引入宽泛兼容分支、重复运行时、统一注册表和无法静态裁剪的适配器,可能同时增加下载体积、解析编译成本、模块发现时间及初始化对象数量。治理重点应从源码复用率转向“每个目标端实际携带并执行了什么”,通过目标端依赖图、产物差异和运行时调用证据决定共享边界。
底层机制与决策依据:条件分支只有在构建器能够证明其不可达时才会被删除;动态模块名、带副作用的入口、全量组件注册、反射和隐式全局初始化都会削弱裁剪。多个依赖版本可能分别携带相似工具和兼容代码;过宽的
