【发布时间】:2021-03-20 06:19:44
【问题描述】:
所以我有一个 React 应用程序 它有 2 页 可以说第一个是家庭,第二个是我的投资组合部分 我的投资组合部分有 2 个功能组件
Home.js
import React from 'react'
const Home = () => {
return (
<h1>Home Screen</h1>
)
}
export default Home
投资组合部分
import React from 'react'
import Projects from '../components/Projects'
import Testimonials from '../components/Testimonials'
const Portfolio = () => {
return (
<>
<h1>Portfolio</h1>
<Projects/>
<Testimonials/>
</>
)
}
export default Portfolio
当我访问 Home 时,Portfolio 一切正常,但当我再次访问它们时,它们每次都会重新加载
我不希望 Portfolio 部分中的 Projects 组件加载多次 我希望它只在启动时/启动网站时加载一次,甚至在访问投资组合部分(即在后台)之前,因为它有大文件需要时间来加载并保持不变,直到用户自愿刷新页面。
组件中有一些使用three.js的3d模型 所以它不是一个静态网站 会有自己的动画 但是每次访问页面时加载整个组件会花费很多时间
但推荐组件会动态变化
所以在 2 个组件中,我希望一个组件保持不变而无需重新加载 其他动态变化
如何让组件只加载一次 任何建议都会帮助我 我看到了 UseMemo 但我不知道这是否对我有帮助 如果是这样,有人可以解释如何在我的情况下使用它
【问题讨论】:
标签: javascript reactjs three.js react-router react-hooks