react-lazy-load-image-component
为了提高性能,我构建了一个 ReactJS 应用程序。
我的代码包装了需要时间初始化的组件,例如:
<h2 className={styles.sectionTitle}>Categories</h2>
<Row>
{categories &&
categories.map((category, index) => {
if (category.image) {
return (
<Col
xs={6}
md={4}
key={index}
className={[
'col-xs-4 col-md-4 col-lg-4 col-xl-3',
styles.thumbnail
].join(' ')}
>
<LazyLoadComponent>
<CategoryButton {...category} />
</LazyLoadComponent>
</Col>
);
}
return null;
})}
</Row>
它工作正常。但是,这是延迟加载,SSR 将我的标记打印为:
<h2>Categories</h2>
<div class="row"></div>
我希望服务器打印所有内容,以便爬虫轻松索引我的页面。我正在使用的库支持该 visibleByDefault
属性,这可能是要走的路。
我只是想知道如何从我的装载机传递它:
<Capture report={m => modules.push(m)}>
<Provider store={store}>
<StaticRouter location={req.url} context={context}>
<Frontload isServer={true}>
<App />
</Frontload>
</StaticRouter>
</Provider>
</Capture>
一直到每个<LazyLoadComponent>
?
建议?