速覽
Firefox 將禁用 TLS 1。0/1。1
React 16。13。0 釋出
Chrome 新增 “預設為訪客” 模式以進行無狀態瀏覽
GitHub 正式收購 npm
Firefox 74 釋出
Mozilla 在 3 月 10 日釋出了 Firefox 74 版本。Firefox 74 做了一些安全最佳化以及增加了一些新功能。
安全更新
Firefox 74 將禁用基於 TLS 1。0 和 TSL 1。1 協議的網站,不支援 TLS 1。2 版的網站將顯示一個錯誤頁面。
這將是首個禁止訪問使用 TLS 1。0 和 TLS 1。1 的 HTTPS 網站的瀏覽器版本。
Mozilla 計劃今年停用並在以後刪除 Firefox Web 瀏覽器中對 FTP 協議的支援。
由於 FTP 本身的安全問題,早在 2015 年 Google 和 Mozilla 工程師開始討論如何從Chrome 和 Firefox Web 瀏覽器中刪除 FTP。兩家公司都已經限制了與 FTP 相關的某些功能。Mozilla 開始阻止 Firefox 61 中網頁上加 FTP 的資源,而 Google 在 Chrome 76 中放棄了代理支援。
就 FTP 本身安全性來講,最好能使用 FTPS,FTPS是一種對常用的檔案傳輸協議(FTP)新增傳輸層安全(TLS)和安全套接層(SSL)加密協議支援的擴充套件協議。
看到這個更新下的評論挺有趣的,哈哈哈。。。
安全漏洞修復:https://www。mozilla。org/en-US/security/advisories/mfsa2020-08/
開發者
Firefox 的 Debugger 增加了對巢狀 Web Worker 進行除錯的支援,現在可以暫停並透過斷點逐步執行它們。
Firefox 增加了對新的 JavaScript 可選連結運算子(?。)和 CSS text-underline-position 的支援。
可選鏈運算子 ?。:能夠去讀取一個被連線物件的深層次的屬性的值而無需明確校驗鏈條上每一個引用的有效性。
const adventurer = { name: ‘Alice’, cat: { name: ‘Dinah’ }};const dogName = adventurer。dog?。name;console。log(dogName);// expected output: undefined
text-underline-position:當 text-decoration 屬性的值設定為 underline 之後,可以用text-underline-position 屬性為其設定下劃線的位置。
/* 只設置一個屬性值 */text-underline-position: auto;text-underline-position: under;text-underline-position: left;text-underline-position: right;/* 設定多個屬性值 */text-underline-position: under left;text-underline-position: right under;/* 全域性屬性值 */text-underline-position: inherit;text-underline-position: initial;text-underline-position: unset;
React 16。13。0 釋出
新增 Render 期間某些更新的警告
在渲染期間,React 元件不應在其他元件中引起副作用。
支援 setState 在渲染期間呼叫,但僅針對同一 component。如果 setState 在其他元件上的渲染期間呼叫,現在將看到警告:
Warning: Cannot update a component from inside the function body of a different component。
此警告將幫助您查詢由於意外狀態更改導致的應用程式錯誤。在極少數情況下由於渲染而有意要更改另一個元件的狀態的情況,可以將 setState 呼叫包裝到 useEffect 中 。
新增樣式規則衝突的警告
當動態應用包含 CSS 屬性的簡寫和簡寫版本的 style 時,特定的更新組合可能會導致樣式不一致。例如:
現在, React 檢測到樣式規則衝突並記錄警告。要解決此問題,請勿在 style 道具中混合使用同一 CSS 屬性的簡寫版本和簡寫版本。
新增一些不推薦使用的字串引用的警告
字串引用是一箇舊的舊式API,不建議使用,以後將不推薦使用:
(一般不要將 String Refs 與 Refs 混淆,後者仍然得到完全支援。)
將來,我們將提供一個自動化指令碼( codemod )以從 String Refs 遷移。但是,在少數情況下無法自動遷移。此版本僅在棄用之前針對那些情況添加了新的警告。
棄用 React。createFactory
React。createFactory用於使用工廠模式建立 React 元件,實際使用過程中完全可以用 JSX代替, 此版本向 React。createFactory 添加了棄用警告。它將在以後的主要版本中刪除。
或者你還可以用下面的方法達到同樣的效果:
let createFactory = type => React。createElement。bind(null, type);
棄用 ReactDOM。unstable_createPortal 正式支援 ReactDOM。createPortal
Portal 可以有一個很形象的翻譯 —— “傳送門”。引用 程墨大佬的解釋:曾經有一款遊戲就叫做 Portal,玩家手上一杆很厲害很科幻的槍,朝牆上開一槍,就可以開出兩個“傳送門”,人鑽進這個傳送門,可以從另一個傳送門裡走出來,也就是說,兩個不同位置的傳送門之間形成了對接。
在 React 中 Portals 提供了一種很好的將子節點渲染到父元件以外的 DOM 節點的方式。
例如:我們在寫一個彈出框元件 Modal 時,這個元件其實不屬於父元件,但是由於我們要把它顯示出來,我們必須要把它掛在到父元件下,這是就可以用到 createPortal,我們將它渲染到父元件以外,但是我們可以透過 “傳送門” 把它彈出來~
Chrome 新增“預設為訪客”模式以進行無狀態瀏覽
Chrome 瀏覽器的 Windows,Linux 和 macOS 高階使用者現在可以使用新的“預設為訪客模式”功能。該功能允許使用者將網路瀏覽器配置為始終以訪客模式啟動。在這種瀏覽模式下,Chrome退出瀏覽器後將刪除計算機上的所有瀏覽活動,從而為使用者提供“從會話到會話的無狀態瀏覽體驗”。
GitHub 正式收購 npm
3月14日 GitHub 正式完成了對 npm,Inc 的收購,部落格中稱將整合 GitHub 和 npm 來提高開源軟體供應鏈的安全性,並使開發者能夠跟蹤從 GitHub 拉取請求到修復它的 npm 軟體包版本的更改。
開源安全是一個重要的全球性問題,隨著 GitHub Security Lab 的最新發布和 GitHub 的內建安全公告, GitHub 已做好充分準備,可以發揮作用。