Angular 2. Переписываю компонент с knockout
Неплохо знаю knockout. Хочу разобраться с Angular 2. Решил, что неплохой практикой будет переписать свой же компонент с knockout на Angular 2.
Для knockout теймплейт выглядит примерно так:
<script type="text/html" id="templateName">
<li>
<span data-bind="text: Text"><span>
</li>
<!-- ko with: Nodes -->
<!-- ko template: { name: 'templateName', foreach: $data } --> <!-- /ko -->
<!-- /ko -->
</script>
т.е. теймплейт внутри себя использует себя же для отображения Nodes. Как такое для Angular 2 сделать? |
Вроде нашел решение.
<template #templateName let-node>
<li>
<span>{{node.Text}}</span>
</li>
<template ngFor [ngForOf]="node.Nodes" [ngForTemplate]="templateName" let-i="index"></template>
</template>
<ul class="list-group">
<template ngFor [ngForOf]="nodes" [ngForTemplate]="templateName" let-i="index"></template>
</ul>
Два общих вопроса, которые меня волнуют: 1. Как убрать из кода комментарии типа ng-reflect-? 2. Почему @angular/compiler/bundles/compiler.umd.js и @angular/core/bundles/core.umd.js грузятся каждый по 2 секунды? Они вместе весят всего 300 кб. Причем загрузка происходит с диска, а не с какого-нибудь CDN. |
| Часовой пояс GMT +3, время: 08:59. |