2016-11-07 38 views
1

考慮使用Draft.js有關Web應用程序的富文本編輯,然後輸出轉換爲一個JSON對象與Draft.js convertToRaw功能和它在數據庫查看草案JS輸出

如果富文本的使用者是反應原生移動應用程序,那麼表示富文本的最佳方法是什麼?

  1. 有通過JSON對象和出口天然TextImage組件迭代任何強大的工作或圖書館?

  2. 也有一些JSON對象導出到HTML一些庫:

導出的HTML然後可以被表示與webview組件。這是一種可靠的方法嗎?

  • 另一種方式表示將推杆在反應天然網頁視圖反應並使用Draft.js EditorreadOnly的道具。但我不知道要走哪條路!
  • 回答

    0

    我們使用redraft將draft-js呈現的豐富文本轉換爲HTML5和Weex(rax)。我相信你可以使用它實現你的目標,因爲redraft只是一個零依賴關係的轉換函數,你可以自定義渲染元素,如HTML中的div或React Native中的View

    3
    1. 這似乎是最好的方法。 您必須獲取json並編寫一個理解Draft.js模型(inlineStyleRangesentityRangesentityMap,...)的解析器,並基於該解析器導出到本機組件。 在工作中,我們遇到了同樣的問題,所以我們開發了一個可以完成這項工作的庫,它被稱爲react-native-draftjs-render。 它有一個示例項目,您可以在其中查看它的工作原理並瞭解如何使用它。它也可以在npm上找到。

    2. 如果您已經有了html版本並且想要使用它,您還需要一個解析器將html轉換爲本地組件。 react-native-htmlview似乎這樣做,但我從來沒有用過。

    3. 渲染本地組件比使用webviews(它們非常有限和速度慢),所以我不建議這種方法。