2017-02-01 13 views
0

私は以下のjsonからdiv構造体を構築しようとしています。 開いているdivタグを作成する方法がわからないので、これを行うのが難しいです。開いた要素を持つAngular2テンプレート

<div *ngIf="a = b">私はそれを閉じる必要があるので、動作しません。その後、私は例外

<ng-container *ngIf="el.tagState == 'OPEN'"> 
    <div >&lt;{{el.name}}&gt;</div> 
    <div class="block"> 
</ng-container> 

Error: Template parse errors: Unexpected closing tag "ng-container" ...

JSON

[ 
{ "name": "names", "tagState": "OPEN" }, 
{ "name": "name", "tagState": "COMPLETE", "data": "John" }, 
{ "name": "name", "tagState": "COMPLETE", "data": "Doe" }, 
{ "name": "names", "tagState": "CLOSE" } 
] 

目的のテンプレート出力

<div class="root-block"> 
    <div class="block"> 
     <div class="row">&lt;names&gt;</div> 
      <div class="block"> 
       <div class="row"><span>&lt;name&gt;</span><span class="data">John</span><span>&lt;name&gt;</span></div> 
       <div class="row"><span>&lt;name&gt;</span><span class="data">Doe</span><span>&lt;name&gt;</span></div> 
      </div> 
     <div class="row">&lt;names&gt;</div> 
    </div> 
</div> 
+0

なぜdivタグを開く必要がありますか? –

+0

ブロックdivは、tagState = closeでエントリを取得するまで開いておく必要があります。

heldt

+2

角型コンポーネントはテンプレート内で無効なHTMLを持つことはできません。 –

答えて

0
を得るため

私はng-containerに入れカント

私はそれを解決するためにデータ構造を階層的に変更し、データ構造をレンダリングするための再帰的なコンポーネントを作成しました。

関連する問題