前段時間React的16版本發(fā)布了,采用了MIT開源許可證,新增了一些新的特性。

1. 使用Error Boundary處理錯誤組件
之前,一旦某個組件發(fā)生錯誤,整個組件樹將會從根節(jié)點被unmount下來。React 16修復了這一點,引入了Error Boundary的概念,中文譯為“錯誤邊界”,當某個組件發(fā)生錯誤時,我們可以通過Error Boundary捕獲到錯誤并對錯誤做優(yōu)雅處理,如使用Error Boundary提供的內容替代錯誤組件。Error Boundary可以看作是一種特殊的React組件,新增了componentDidCatch這個生命周期函數(shù),它可以捕獲自身及子樹上的錯誤并對錯誤做優(yōu)雅處理,包括上報錯誤日志、展示出錯提示,而不是卸載整個組件樹。(注:它并不能捕獲runtime所有的錯誤,比如組件回調事件里的錯誤,可以把它想象成傳統(tǒng)的try-catch語句)
//最佳實踐:將ErrorBoundary抽象為一個公用的組件類
import React, { Component } from 'react'
export default class ErrorBoundary extends Component {
constructor(props) {
super(props)
this.state = { hasError: false }
}
componentDidCatch(err, info) {
this.setState({ hasError: true })
//sendErrorReport(err,info)
}
render(){
if(this.state.hasError){
return <div>Something went wrong!</div>
}
return this.props.children
}
}
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網(wǎng)頁名稱:十分鐘帶你快速了解React16新特性-創(chuàng)新互聯(lián)
文章來源:http://chinadenli.net/article28/coihjp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供云服務器、營銷型網(wǎng)站建設、網(wǎng)站維護、響應式網(wǎng)站、服務器托管、自適應網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容