You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
munir ishak e072d8b6d1 initial commit 4 年之前
example initial commit 4 年之前
img initial commit 4 年之前
newExample initial commit 4 年之前
readme initial commit 4 年之前
src initial commit 4 年之前
.gitignore initial commit 4 年之前
.npmignore initial commit 4 年之前
LICENSE initial commit 4 年之前
README.md initial commit 4 年之前
htmlCopy.gradle initial commit 4 年之前
index.js initial commit 4 年之前
package.json initial commit 4 年之前

README.md

React Native Rich Text Editor with react-native-webview

Visit original repo first

This resolves #171, #174, and #178

Inspirations

For now, the original library has problems of using two deprecated modules, ListView and react-native-webview-bridge-updated. ListView problem is solved by Ankit-96 ’s PR. So I focused on removing react-native-webview-bridge-updated and making use of react-native-webview.

What I did

  • Did just like what Ankit-96 did; replaced ListView with FlatList
  • Replaced react-native-webview-bridge-updated with react-native-webview
    • Instead of injecting MessageHandler into webpage(WebViewBridge) and sending message through sendToBridge, I directly inject zss_editor’s function calls through injectJavaScript. To achieve that, I fixed WebViewMessageHandler.js to be mapper function, translating functions of RichTextEditor to those of zss_editor.
    • In editor.html, replace WebViewBridge.send with ReactNativeWebView.postMessage
  • Added ./newExample. You should $ cd newExample; yarn; cd ios; pod install; cd ..; react-native run-ios;.

How to use it

  • $ yarn add https://github.com/jb-/react-native-zss-rich-text-editor
  • $ yarn add react-native-webview (I’m not sure why I have to do this)
  • $ cd ios; pod install;

Limitations

  • Tested on RN 0.61.5, iOS only.

  • Since I worked it for my project only, I did not test it on other versions or on Android platform. If any of you are familiar with both Android and iOS natives, please refer to my project and collaborate.

References