Skip to content

artemyarulin/react-native-xml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

react-native-xml

React native compatable XML/HTML parser with XPath support

Usage

let xml = require('react-native').NativeModules.RNMXml
xml.queryXml('<doc a="V1">V2</doc>',
            ['/doc/@a', '/doc'],
            results => results.map(nodes => console.log(nodes[0])))
// Output:
//	V1
//	V2

queryXml(xmlString,queries) -> results

queryHtml(htmlString,queries) -> results

  • xmlString|htmlString - xml or html string
  • queries - array of xpath strings which would be executed against xml string
  • results - array of results such as queries.length == results.length. Each result is an array as well
let xml = require('react-native').NativeModules.RNMXml
xml.queryHtml('<html><div>a</div><div>b</div></html>',
		 	 ['/html/body/div'],
		 	 results => console.log(results[0]))
//Output: ['a','b']

parseString(string,isHtml) -> parsedTree

Where parsedTree is a dictionary (inspired by Clojure data.xml) with a structure:

{"tag":"tagName",
 "attrs:{"attrName":"attrValue"},
 "content":[either text content or the same structure for each childs]}

See tests for more information

Installation

Using Cocoapods:

pod 'react-native-xml', '0.2.1'