Javascript 更新dust.js中的部分内容,而不接触模板的其余部分
我正在尝试使用dust.js,我想知道解决这个问题的最有效方法: 我有一个简单的模板结构,有两个级别的导航和内容 第一级导航是静态的,而第二级(子导航)随着主导航的每次更改而更改Javascript 更新dust.js中的部分内容,而不接触模板的其余部分,javascript,templates,partials,dust.js,Javascript,Templates,Partials,Dust.js,我正在尝试使用dust.js,我想知道解决这个问题的最有效方法: 我有一个简单的模板结构,有两个级别的导航和内容 第一级导航是静态的,而第二级(子导航)随着主导航的每次更改而更改 父模板: <nav class="navbar navbar-fixed-top navbar-dark"> <div class="container"> {>"navigation/navigation_primary"/} {>"nav
父模板:
<nav class="navbar navbar-fixed-top navbar-dark">
<div class="container">
{>"navigation/navigation_primary"/}
{>"navigation/navigation_secondary"/}
</div>
</nav>
<div class="container"></div>
<div class="navbar-container navbar-primary">
<ul class="nav navbar-nav">
{#navigation_primary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_primary}
</ul>
</div>
<div class="navbar-container navbar-secondary">
<ul class="nav navbar-nav">
{#navigation_secondary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_secondary}
</ul>
</div>
{>“导航/导航\主”/}
{>“导航/导航\辅助”/}
主导航模板:
<nav class="navbar navbar-fixed-top navbar-dark">
<div class="container">
{>"navigation/navigation_primary"/}
{>"navigation/navigation_secondary"/}
</div>
</nav>
<div class="container"></div>
<div class="navbar-container navbar-primary">
<ul class="nav navbar-nav">
{#navigation_primary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_primary}
</ul>
</div>
<div class="navbar-container navbar-secondary">
<ul class="nav navbar-nav">
{#navigation_secondary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_secondary}
</ul>
</div>
{#导航(初级)}
-
{/navigation_primary}
辅助导航模板:
<nav class="navbar navbar-fixed-top navbar-dark">
<div class="container">
{>"navigation/navigation_primary"/}
{>"navigation/navigation_secondary"/}
</div>
</nav>
<div class="container"></div>
<div class="navbar-container navbar-primary">
<ul class="nav navbar-nav">
{#navigation_primary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_primary}
</ul>
</div>
<div class="navbar-container navbar-secondary">
<ul class="nav navbar-nav">
{#navigation_secondary}
<li class="nav-item">
<a class="nav-link" href="#{slug}">{label}</a>
</li>
{/navigation_secondary}
</ul>
</div>
{#导航中学}
-
{/navigation_secondary}
现在,我的问题是:在不重新加载页面的情况下,我想在单击主导航元素时更新“辅助导航” 我这样做的方法是重新呈现“辅助导航模板”,然后用新呈现的模板(使用jQuery.html())替换旧的“.navbar Secondary”-但我想知道dust.js是否有自己的功能,因为它能够异步加载部分 老实说,我觉得dust.js文档的大部分内容都不是很丰富,所以我很难弄清楚细节
是否有更好的方法只更新部分,而不使用jQuery.html()之类的东西来替换dust.js中的部分,而保留模板的其余部分不变?dust只是一个字符串渲染器——它只接收模板并输出渲染的字符串。它没有将这些字符串放在DOM中任何位置的功能。@Interrobang我想我已经在使用正确的方法来更新模板的部分区域了。