在Angular 2中如何将数组字符串元素放入模板元素的value-attribute中?

bri*_*nch 4 javascript jquery typescript angular

我的Angular 2组件类中有一个名为myArray的数组:

@Component({
    templateUrl: 'my.component.html'
})

export class MyComponent {
    private myArray: Array<string>;
    ...
}
Run Code Online (Sandbox Code Playgroud)

在my.component.html中,我有一个输入元素:

<input placeholder='write some tags' value=''>
Run Code Online (Sandbox Code Playgroud)

我想要的是将myArray的字符串元素插入到输入元素的value属性中。字符串应以逗号分隔。就像是:

<input placeholder='write some tags' value='apple, orange, banana'>
Run Code Online (Sandbox Code Playgroud)

我试过了:

<input name='user-tag' placeholder='write some tags' value='*ngFor="let e of myArray"{{e}}'>
Run Code Online (Sandbox Code Playgroud)

但这产生了一个错误。

我怎样才能做到这一点?

Ada*_*dam 7

无需使用*ngFor,请尝试使用Array.join()

<input name='user-tag' placeholder='write some tags' value='{{ myArray.join(', ') }}'>
Run Code Online (Sandbox Code Playgroud)

  • 绝对地,[pipe](https://angular.io/docs/ts/latest/guide/pipes.html)将非常适合您所描述的内容,但是我不想过度设计答案。 (2认同)