@icebreakers/wxml
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

WXML

wxml parser and serializer.

Build Status NPM Version NPM Downloads MIT License Standard Version Codecov

Install

yarn add wxml or npm i wxml --save

Usage

import * as wxml from 'wxml';
const parsed = wxml.parse('<view></view>');
wxml.traverse(parsed, function visitor(node, parent) {
  const type = node.type;
  const parentNode = node.parentNode;

  if (type === wxml.NODE_TYPES.ELEMENT) {
    // handle element node
    const tagName = node.tagName;
    const attributes = node.attributes; // an object represents the attributes
    const childNodes = node.childNodes;
    const selfClosing = node.selfClosing; // if a node is self closing, like `<tag />`
  } else if (type === wxml.NODE_TYPES.TEXT) {
    // handle text node
    const textContent = node.textContent;
  } else if (type === wxml.NODE_TYPES.COMMENT) {
    // handle comment node
    const comment = node.comment;
  }
});
const serialized = wxml.serialize(parsed);

API

parse

(input: string) => AST

traverse

(node: Node, visitor: (node: Node, parent: Node) => void) => void

serialize

(node: Node) => string

Package Sidebar

Install

npm i @icebreakers/wxml

Weekly Downloads

1

Version

1.0.2

License

MIT

Unpacked Size

33.6 kB

Total Files

30

Last publish

Collaborators

  • icebreaker