unist utility to visit nodes.
This package is ESM only:
Node 12+ is needed to use it and it must be import
ed instead of require
d.
npm:
npm install unist-util-visit
import {u} from 'unist-builder'
import {visit} from 'unist-util-visit'
const tree = u('tree', [
u('leaf', '1'),
u('node', [u('leaf', '2')]),
u('void'),
u('leaf', '3')
])
visit(tree, 'leaf', (node) => {
console.log(node)
})
Yields:
{ type: 'leaf', value: '1' }
{ type: 'leaf', value: '2' }
{ type: 'leaf', value: '3' }
Note: this example also uses unist-builder
, to run the example ensure both unist-builder
and unist-util-visit
are installed:
npm install unist-builder unist-util-visit
This package exports the following identifiers: visit
, CONTINUE
, SKIP
, and
EXIT
.
There is no default export.
This function works exactly the same as unist-util-visit-parents
,
but visitor
has a different signature.
Instead of being passed an array of ancestors, visitor
is called with the
node
’s index
and its parent
. The optional return value
next
is documented in unist-util-visit-parents
’s readme.
Otherwise the same as unist-util-visit-parents
.
unist-util-visit-parents
— Likevisit
, but with a stack of parentsunist-util-filter
— Create a new tree with all nodes that pass a testunist-util-map
— Create a new tree with all nodes mapped by a given functionunist-util-flatmap
— Create a new tree by mapping (to an array) with the given functionunist-util-remove
— Remove nodes from a tree that pass a testunist-util-select
— Select nodes with CSS-like selectors
See contributing.md
in syntax-tree/.github
for ways to get
started.
See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.