2.0.2 • Published 2 years ago

@frank-mayer/dom-serializer v2.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

dom-serializer

fork of @cheeriojs/dom-serializer

The original package does not work if you are using ES6 modules: Issue 612

Renders a domhandler DOM node or an array of domhandler DOM nodes to a string.

import { render } from "dom-serializer";

const html: string = render(dom);

API

render

render(node: Node | Node[], options?: Options): string

Renders a DOM node or an array of DOM nodes to a string.

Can be thought of as the equivalent of the outerHTML of the passed node(s).

Parameters:

NameTypeDefault valueDescription
nodeNode | Node[]-Node to be rendered.
optionsDomSerializerOptions{}Changes serialization behavior

Returns: string

Options

decodeEntities

Optional decodeEntities: boolean

Encode characters that are either reserved in HTML or XML, or are outside of the ASCII range.

default true


emptyAttrs

Optional emptyAttrs: boolean

Print an empty attribute's value.

default xmlMode

example With emptyAttrs: false: <input checked>

example With emptyAttrs: true: <input checked="">


selfClosingTags

Optional selfClosingTags: boolean

Print self-closing tags for tags without contents.

default xmlMode

example With selfClosingTags: false: <foo></foo>

example With selfClosingTags: true: <foo />


xmlMode

Optional xmlMode: boolean | "foreign"

Treat the input as an XML document; enables the emptyAttrs and selfClosingTags options.

If the value is "foreign", it will try to correct mixed-case attribute names.

default false


Ecosystem

NameDescription
htmlparser2Fast & forgiving HTML/XML parser
domhandlerHandler for htmlparser2 that turns documents into a DOM
domutilsUtilities for working with domhandler's DOM
css-selectCSS selector engine, compatible with domhandler's DOM
cheerioThe jQuery API for domhandler's DOM
dom-serializerSerializer for domhandler's DOM

LICENSE: MIT