Home

Awesome

React Native HTML 2 Native

A component which takes HTML content and renders it as native views.

Props

example

import React, { Component } from 'react'
import ReactNative from 'react-native'
const { Text, View, ListView } = ReactNative

const HTMLView = require('react-native-html2native')

class App extends Component {
  render() {
    const content = '<p><a href="http://google.com">Google it FTW!</a></p>'

    return (
      <HTMLView
        value={content}
        stylesheet={styles}
      />
    )
  }
})

const styles = StyleSheet.create({
  a: {
    fontWeight: '300',
    color: '#FF0000'
  }
})

When a link is clicked, by default ReactNative.Linking.openURL is called with the link url. You can customise what happens when a link is clicked with onLinkPress:

import React, { Component } from 'react'
import ReactNative from 'react-native'

class ContentView extends Component {
  render() {
    return (
      <HTMLView
        value={this.props.html}
        onLinkPress={(url) => console.log('Link clicked: ', url)}
      />
    )
  }
})