Является ли React короткозамкнутым согласованием, когда идентичность объекта реквизита не задокументирована? - PullRequest
0 голосов
/ 11 февраля 2020

Я подозревал, что React может оптимизировать повторное использование возвращаемого значения метода render. Поэтому что-то вроде этого не будет вызывать Foo каждый раз, когда состояние Bar меняется.

function Foo() {
    return <h1>Foo</h1>;
}

class Bar extends Component {
    cache = <Foo />;
    render() {
        return this.cache;
    }
}

После некоторой проверки, достаточно, чтобы React выполнил проверку oldProps! == newProps и потенциально выручает из примирения на ранней стадии.

Что мне интересно, так это - следует ли считать это внутренней оптимизацией или документированным механизмом, на который пользователь может положиться? До сих пор я не смог найти никаких документов, подтверждающих или опровергающих это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...