Pouvez-vous appliquer visible la liaison à partir des données actuellement lié?
-
11-10-2019 - |
Question
Je suis en train de mettre un contenu dans un modèle pour être visible que si l'élément étant rendu est le « étape ».
Voici le code à ce jour, je veux être en mesure de rendre une partie seulement du modèle interne si l'élément de données a rendu ID == window.viewModel.activeObject
.
<section data-bind='template: { name: "categoryTemplate", foreach: categories }'></section>
<script type="text/html" id="categoryTemplate">
<section>
<h2>${Name}</h2>
<section data-bind='template: { name: "objectTemplate", foreach: Objects }'></section>
</section>
</script>
<script type="text/html" id="objectTemplate">
<article>
<h3>${Name}</h3>
(only render this if the object rendered has ID equal to viewModel.activeObject)
{{html Text}}
</article>
</script>
<script>
$(document).ready(function(){
window.viewModel = { categories : <asp:Literal runat="server" ID="LiteralJSON" />,
activeCategory: ko.observable(0),
activeObject: ko.observable(0)
};
ko.applyBindings(window.viewModel);
});
</script>
Comment dois-je procéder?
La solution
Vous aurez envie d'utiliser {if}{/if}
<script type="text/html" id="objectTemplate">
<article>
<h3>${Name}</h3>
{if $item.data.id === viewModel.activeObject()}
{{html Text}}
{/if}
</article>
</script>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow