[英]What is correct way of passing html tags in React State?
我正在使用React創建Blog。 我正計划從服務器引入博客的主要內容,並通過Props / State傳遞給React Component。 博客內容可以具有html標簽,例如:
我希望將Blog的內容與這些標記一起存儲在Database / json文件中,並在頁面加載時呈現該內容。 但是在React中似乎很難做到這一點。 我們可以通過三種方式實現這一目標:
這個課題很好地討論了這些方法:
我的查詢是:
沒有dangerouslySetInnerHTML
有什么特別的。 無論是否使用React,從javascript渲染HTML總是很危險的,這取決於所述HTML的來源。 例如,如果要渲染自己創建並保存到數據庫的帖子,則不會有危險(除非數據庫受到威脅)。 但是,假設您對某個帖子發表了評論,並且用戶發送了惡意代碼作為評論。 所有其他訪問該頁面的用戶,都將從數據庫中獲取惡意代碼,然后在其瀏覽器中“危險地”執行該惡意代碼。 因此,您需要做的是通過在保存到數據庫之前清理所有用戶輸入來確保HTML源是安全的。 您可以使用一些庫來實現此目的,例如-http://htmlpurifier.org/
關於SEO,您可以使用服務器端渲染-https: //www.smashingmagazine.com/2016/03/server-side-rendering-react-node-express/
確保您在url上擁有所需的所有信息,因此您不必依賴“狀態”來呈現頁面,如帖子ID等。您可以使用React Router- https:// github來實現。 COM / reactjs /反應路由器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.