2017-12-11 13 views
0

スパン要素にアクセスして番号を割り当てるにはどうすればよいですか?角度4 |スパン要素にアクセスして番号を割り当てる方法

<div class="container"> 
    <span>one</span> 
    <span>two</span> 
    <span>tree</span> 
    <span>four</span> 
    <span>five</span> 
</div> 

、結果はこの

one | 1 
two | 2 
three| 3 
four | 4 
five | 5 

ようにする必要があり、私は何かの@ViewChildrenとローカル参照を見つけたが、私はspan要素にアクセスするとき、私はそれだけの長さを取得します。どのように私はスパンにアクセスし、それに番号を割り当てることができますか?

+0

@Component({/*...*/}) export class SomeComponent implements AfterViewInit { @ViewChild('container') public container: ElementRef; public ngAfterViewInit() { // container will be undefined before this hook let spans = this.container.nativeElement.children; for (let i in spans) { spans[i].innerText += i + 1; } } } 

私はあなただけの標準的な角度イテレータを使うことができると思うがそれに数字?あなたは内容を交換する方法を尋ねていますか? –

+0

必ずしもそうではありませんが、私の悪いタイトルには申し訳ありません。 –

答えて

4

あなたが達成しようとしていることはわかりませんが、あなたはそれを行うことができます。この方法:

テンプレート:

<div #container class="container"> 
    <span>one</span> 
    <span>two</span> 
    <span>tree</span> 
    <span>four</span> 
    <span>five</span> 
</div> 

はコンポーネント:あなたが「*割り当てとはどういう意味ですか

interface Item { 
    text: string; 
    maybeMoreProperties?: number; 
} 

@Component({ 
    template: `<div class="container"> 
<span *ngFor="let item of items, let i = index">{{item.text}} {{i + 1}}</span> 
</div>` 
}) 
export class SomeComponent implements OnInit { 
    public items: Array<Item> = []; 

    constructor(someService: SomeService) { 
    // let's say SomeService.getItems() returns array of {text: 'something'} 
    this.items = someService.getItems(); 
} 
+1

ありがとう、これは実際に私が探しているものです。 –

関連する問題