Awesome
dom-serializer ![Node.js CI](https://github.com/cheeriojs/dom-serializer/actions/workflows/nodejs-test.yml/badge.svg)
Renders a domhandler DOM node or an array of domhandler DOM nodes to a string.
import render from "dom-serializer";
// OR
const render = require("dom-serializer").default;
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:
Name | Type | Default value | Description |
---|---|---|---|
node | Node | Node[] | - | Node to be rendered. |
options | DomSerializerOptions | {} | Changes serialization behavior |
Returns: string
Options
encodeEntities
• Optional
decodeEntities: boolean | "utf8"
Encode characters that are either reserved in HTML or XML.
If xmlMode
is true
or the value not 'utf8'
, characters outside of the utf8 range will be encoded as well.
default
decodeEntities
decodeEntities
• Optional
decodeEntities: boolean
Option inherited from parsing; will be used as the default value for encodeEntities
.
default
true
emptyAttrs
• Optional
emptyAttrs: boolean
Print an empty attribute's value.
default
xmlMode
example
With <code>emptyAttrs: false</code>: <code><input checked></code>
example
With <code>emptyAttrs: true</code>: <code><input checked=""></code>
selfClosingTags
• Optional
selfClosingTags: boolean
Print self-closing tags for tags without contents. If xmlMode
is set, this
will apply to all tags. Otherwise, only tags that are defined as self-closing
in the HTML specification will be printed as such.
default
xmlMode
example
With <code>selfClosingTags: false</code>: <code><foo></foo><br></br></code>
example
With <code>xmlMode: true</code> and <code>selfClosingTags: true</code>: <code><foo/><br/></code>
example
With <code>xmlMode: false</code> and <code>selfClosingTags: true</code>: <code><foo></foo><br /></code>
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
Name | Description |
---|---|
htmlparser2 | Fast & forgiving HTML/XML parser |
domhandler | Handler for htmlparser2 that turns documents into a DOM |
domutils | Utilities for working with domhandler's DOM |
css-select | CSS selector engine, compatible with domhandler's DOM |
cheerio | The jQuery API for domhandler's DOM |
dom-serializer | Serializer for domhandler's DOM |
LICENSE: MIT