【发布时间】:2021-12-07 16:20:24
【问题描述】:
我有一个用 ReactJS 制作的网站。在public/index.html,我有
<head>
<script src="/lib/analyzejs-v1.js"></script>
<script src="/lib/analyzejs-v2.js"></script>
</head>
<body>
<div id="root"></div>
</body>
其中analyzejs-v1.js 有 6Mo,analyzejs-v2.js 有 3Mo;它们都是固定文件,我无法修改太多。
这两个文件不是模块;它们的函数已声明(例如,src/defines/analyzejs-v1.d.ts 中的 declare function f1(address: string): string;)。所以有些组件直接使用f1(...)这样的函数名调用analyzejs-v1.js的函数,没有任何命名空间、导入或导出。其余组件直接调用analyzejs-v2.js 的函数,直接使用f2(...) 之类的函数名,无需任何命名空间、导入或导出。
加载这两个js库文件需要时间。所以我正在寻找一种根据组件(或 URL)加载 analyzejs-v1.js 或 analyzejs-v2.js 的方法。
那么有谁知道为不同组件加载不同 JS 库文件的常规方法吗?
【问题讨论】:
-
什么是编译/捆绑你的
index.tsx? -
我猜是
webpack -
您希望
webpack捆绑分析 js 文件还是手动将其与您的脚本标签一起包含在 head 中? -
目前,我只是手动将analyze js文件复制到需要的地方。我没有任何偏好,我正在寻找一种常规的方式。
-
分析文件是源代码的一部分吗?我猜它是超级大的时候生成的。
标签: reactjs webpack react-scripts script-tag hamlet