到目前为止,我尝试过的所有模板引擎(Handlebars,Underscore,Embedded)都要求您输入数据并将模板呈现为HTML。但是,我的数据更新频繁,这会导致页面在重建布局时闪烁。
是否有支持更新DOM的模板引擎,而不是每次都重新创建它?
答案 0 :(得分:1)
React是一种"视图框架"允许DOM根据您提供的任何数据重新渲染。
您可以编写组件,当状态发生更改时(即属于组件的数据),组件将重新呈现。
这基本上意味着布局是数据的函数。
我会看看Getting Started (React)。有很多教程可供选择。
请注意,React仅处理"视图"层。您必须决定数据流的发生方式。作为一个起点,我会看一下Redux,它开始受欢迎。
是否有支持更新DOM的模板引擎,而不是每次都重新创建它?
在引擎盖下,React并不总是必须重新渲染整个DOM。它在内存中保存DOM的虚拟表示(称为虚拟DOM),查看数据,实际DOM和虚拟DOM,并决定实际需要重新呈现的内容。
答案 1 :(得分: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();