mirror of
https://github.com/flarum/framework.git
synced 2025-02-02 19:14:01 +08:00
20 lines
402 B
JavaScript
20 lines
402 B
JavaScript
|
/**
|
||
|
* Extract the text nodes from a virtual element.
|
||
|
*
|
||
|
* @param {VirtualElement} vdom
|
||
|
* @return {String}
|
||
|
*/
|
||
|
export default function extractText(vdom) {
|
||
|
let text = '';
|
||
|
|
||
|
if (vdom instanceof Array) {
|
||
|
text += vdom.map(element => extractText(element)).join('');
|
||
|
} else if (typeof vdom === 'object') {
|
||
|
text += extractText(vdom.children);
|
||
|
} else {
|
||
|
text += vdom;
|
||
|
}
|
||
|
|
||
|
return text;
|
||
|
}
|