您好,登錄后才能下訂單哦!
這篇文章主要介紹“react懶加載怎么使用”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“react懶加載怎么使用”文章能幫助大家解決問題。
react懶加載是指不會預加載,而是需要使用某段代碼,某個組件或者某張圖片時才加載;之所以需要懶加載,是因為在首屏同時加載過多的內容,會導致卡頓不流暢響應速度慢、用戶等待時間過長等問題,對此可以使用懶加載機制來進行優化。
React懶加載
一、懶加載是什么?為什么需要懶加載?
懶加載:不會預加載,而是需要使用某段代碼,某個組件或者某張圖片時,才加載他們(延遲加載)
原因:頁面多,內容豐富,頁面長,圖片多。在首屏同時加載過多的內容,會導致卡頓不流暢響應速度慢、用戶等待時間過長等問題。對此我們常用懶加載機制來進行優化。
二、使用懶加載
使用React.lazy加載
//OtherComponent.js 文件內容
import React from 'react'
const OtherComponent = ()=>{
return (
<div>
我已加載
</div>
)
}
export default OtherComponent
// App.js 文件內容
import React from 'react';
import './App.css';
//使用React.lazy導入OtherComponent組件
const OtherComponent = React.lazy(() => import('./OtherComponent'));
function App() {
return (
<div className="App">
<OtherComponent/>
</div>
);
}
export default App;
但是這樣頁面會報錯。這個報錯提示我們,在React使用了lazy之后,會存在一個加載中的空檔期,React不知道在這個空檔期中該顯示什么內容,所以需要我們指定。接下來就要使用到Suspense加載指示器。
import React, { Suspense, Component } from 'react';
import './App.css';
//使用React.lazy導入OtherComponent組件
const OtherComponent = React.lazy(() => import('./OtherComponent'));
export default class App extends Component {
state = {
visible: false
}
render() {
return (
<div className="App">
<button onClick={() => {
this.setState({ visible: true })
}}>
</button>
加載OtherComponent組件
<Suspense fallback={<div>Loading...</div>}>
{
this.state.visible
?
<OtherComponent />
:
null
}
</Suspense>
</div>
)
}
}
關于“react懶加載怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。