* ngFor或* ngIf中的插值和模板表达式?

时间:2018-04-17 16:37:43

标签: angular angular5

当我尝试在ngFor或ngIf中插入一些变量时,我遇到了一些问题。

我拥有的组件非常动态,而且还有它的功能所以我需要做这种事情,我很确定它是可能的。

总结一下,我想做那样的事情

*ngFor="let option of 'option_'{{dynamic_var}}" 

如果有人可以帮助我,我将非常感激。

非常感谢

1 个答案:

答案 0 :(得分:1)

如果您需要在每个值之前添加一个字符串,为什么不在模板中创建一个get方法来映射这些值?

模板:

<div>
    <h2>Mapped Values</h2>
    <p *ngFor="let map of getValues()">
        {{map}}
    </p>
</div>

组件:

import { Component } from '@angular/core';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
  name = 'Angular 5';

  values = ['OneValue', 'ThreeValue', 'TwoValue'];

  constructor() {

  }

  public getValues() {
    let mappedValues = this.values.map(el => 'option_' + el);
    console.log(mappedValues);
    return mappedValues;
  }
}

这是StackBlitz:https://stackblitz.com/edit/angular-kw8x9x