А так ли оно надо при передаче по дереву? Ведь адрес функции может поменяться только если компонент, в котором она была объявлена, обновился, а значит и дочерние компоненты обновятся в любом случае, если они не обёрнуты в memo, или в них не определён shouldComponentUpdate