this question'u gördüm ve yöntemini kullanarak JS konsolunda Uncaught SyntaxError: Unexpected token)
bir hata oluşturuyor.KnockoutJS ve Yinelemeli Şablon
Kategorilerin bir dizisi olan Children
özelliğine sahip ve jQuery şablonu kullanarak bunları oluşturmaya çalışan özyinelikli bir dizi kategoriyi almaya çalışıyorum. Denediğim her yöntem bazı sözdizimi hatasıyla sonuçlanır. Nesnenin javascript'te düzgün bir şekilde gösterildiğini doğruladım (bir MV dizisine dönüştürmek için @Html.Raw(Json.Encode(Model.Categories))
kullanarak MVC3'ten geliyor). İşte asıl csharp sınıftır
public class CategoryTreeModel
{
public int Id { get; set; }
public string Name{ get; set; }
public bool Selected { get; set; }
public bool HasChildren { get { return Children.Count > 0; } }
public List<CategoryTreeModel> Children { get; set; }
}
şablonun ilk seviyesini çağırır Bu orijinal html:
<ul class="nav" data-bind="template: {name: 'categories_template', foreach: categories}">
</ul>
ve şablonu kendisi:
<script type="text/html" id="categories_template">
<li id="category_${Id}" class="category_header">${Name}
{{if $data.HasChildren }}
<ul data-bind='template: { name: "categories_template", foreach: Children}'>
</ul>
{/if}
</li>
şablonu Çocuk bölümlerini çıkarırsam ilk seviyeyi düzgün bir şekilde verirsek çalışır. Kodu olduğu gibi kullandığımda Uncaught SyntaxError: Unexpected token)
olsun. Neyi yanlış yapıyorum?
Not yardımcı olur şablon modeli boşaltma 2.0 – Tyrsius