如何以递归方式遍历React元素子元素并在每个元素上调用方法?

时间:2017-06-15 21:56:49

标签: javascript reactjs

首先我知道这通常不是"反应方式"做事。然而,这是一个非常特殊的情况,我需要在一个所见即所得的编辑器中序列化一个元素树。

总之,我有一个顶级React元素的引用,我们称之为topElement。 topElement有孩子,那些孩子有孩子等。

我需要遍历整个子树,并在任何具有该功能的所有子项上调用函数" serialize"。这是我到目前为止所得到的。

function serializeChildren(children){
    React.Children.map(children,(child)=>{

        //this is always undefined
        if(child.serialize !== undefined){
            let result = child.serialize()
            doSomethingWith(result)
        }

        if(child.props.children){
            serializeChildren(child.props.children)
        }
    })
}


function serializeChildren(topElement)

0 个答案:

没有答案