Вы должны понимать, что когда происходит рендер React компонента происходят следующие вещи:
1. расчет нового узла Virtual DOM
2. добавление по полученной Virtual DOM модели элеменов в реальный DOM
когда же происходит перерендер React компонента, происходит примерно следующие:
1. расчет новой версии узла Virtual DOM
2. сверка ее со старой
3. при необходимости вносятся изменения в реальный DOM
Поэтому ваш вопрос поставлен некорректно. Если изменить Virtual DOM, не изменив после этого обычный, изменений на Веб-странице вы не увидите. Так как это лишь объект в памяти вашего приложения:
{
type: 'ul', props: { 'class': 'list' }, children: [
{ type: 'li', props: {}, children: ['item 1'] },
{ type: 'li', props: {}, children: ['item 2'] }
]
}
Сам React изменяет DOM медленней, чем если бы вы изменяли его напрямую. Так как помимо самого изменения DOM, надо рассчитать новую версию Virtual DOM, сравнить со старой и только потом внести изменения. Об этом можете почитать в статьях ниже.
Статьи по теме:
Почему Virtual DOM медленнейБенчмаркКак работает Virtual DOMКак написать ваш собственный виртуальный DOM