我正在尝试预取脚本,以便我可以渲染(预取)用户将更快导航到的 React 组件。我的脚本正在被预取,但它们似乎没有被使用。当我转到另一个页面(例如 Look)时,再次获取 Look 捆绑包,并且根本不使用预取的捆绑包。
我已经发布了每个请求的标头的两个屏幕截图。预取请求Accept
在其标头中具有不同的值(由 webpack 发出的请求)。值也不同,我相信这Cookie
与 Google Analytics 相关,但我认为这不是问题所在。
在键入此内容时,我注意到 Chrome 中的“预览/响应”选项卡显示“无法加载响应数据”(见第一个屏幕截图),所以我检查了 Firefox,那里的响应都是相同的,但我猜这可能是一个指标怎么了。
TL;DR:为什么我的预取脚本没有被使用?
我@loadable/component
用于预取组件,示例代码:
import loadable from '@loadable/component';
import React from 'react';
const LoadableComponent = loadable(
() =>
import(
/* webpackChunkName: "Look", webpackPrefetch: true */
'../containers/Look'
),
{
fallback: <div />,
},
);
const LookLoadable = () => <LoadableComponent />;
export default LookLoadable;