2016-03-03 4 views
0

Все модели шаблонов, которые я пробовал до сих пор (Handlebars, Underscore, Embedded), требуют ввода данных и отображения шаблона в HTML. Тем не менее, мои данные обновляются довольно часто, и это приводит к тому, что страница мерцает по мере перестройки макета.Есть ли механизм шаблонов, который обновляет DOM при изменении данных?

Есть ли механизм шаблонов, который поддерживает обновление DOM вместо воссоздания его каждый раз?

ответ

1

React - это своего рода «ракурс представлений», который позволяет DOM перерисовывать на основе любых данных, которые вы ему даете.

Вы можете писать компоненты, и когда состояние изменяется (то есть данные, которые принадлежат компоненту), компонент будет повторно рендерить.

Это означает, что макет является функцией данных.

Я бы посмотрел Getting Started (React). Существует много учебных пособий.

Обратите внимание, что React обрабатывает только слой «вид». Вы должны решить, как вы хотите, чтобы ваш поток данных произошел. В качестве отправной точки я бы посмотрел на Redux, который стал популярным.

Есть ли механизм шаблонов, который поддерживает обновление DOM вместо воссоздания его каждый раз?

Под капотом React не всегда обязательно повторно отображает всю DOM. Он содержит виртуальное представление DOM в памяти (называемое виртуальным DOM), рассматривает данные, фактическую DOM и виртуальную DOM и решает, что на самом деле нужно повторно отобразить.

0

Как @Josh Beam сказал, React является своего рода «рамой зрения». Но это не механизм шаблонов. Может быть, Vdt тот, который нужен. Он основан на virtual-dom, поэтому его можно обновлять без повторного создания всей DOM каждый раз.

сниппет как ниже:

<div>Hello {name}!</div> 
var vdt = Vdt(template); 
vdt.render({name: 'World'}); 

// then update 
vdt.data.name = 'Vdt'; 
vdt.update(); 

 Смежные вопросы

  • Нет связанных вопросов^_^