Given the following code, how would I bind on click my selected option to selectedOption.name
and selectedOption.value
, respectively?
appponent.ts:
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './appponent.html',
styleUrls: ['./appponent.css']
})
export class AppComponent {
options = [
{
name: 'test1',
value: "This is test1's value"
},
{
name: 'test2',
value: "This is test2's value"
},
{
name: 'test3',
value: "This is test3's value"
}
]
}
appponent.html:
<button md-icon-button [md-menu-trigger-for]="menu">
<md-icon>ment</md-icon>
</button>
<md-menu #menu="mdMenu">
<div *ngFor="let option of options">
<button md-menu-item>{{option.name}}</button>
</div>
</md-menu>
<h3>Your selected option: </h3>
<p>{{selectedOption.name}}: {{selectedOption.value}}</p>
Given the following code, how would I bind on click my selected option to selectedOption.name
and selectedOption.value
, respectively?
app.ponent.ts:
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.ponent.html',
styleUrls: ['./app.ponent.css']
})
export class AppComponent {
options = [
{
name: 'test1',
value: "This is test1's value"
},
{
name: 'test2',
value: "This is test2's value"
},
{
name: 'test3',
value: "This is test3's value"
}
]
}
app.ponent.html:
<button md-icon-button [md-menu-trigger-for]="menu">
<md-icon>ment</md-icon>
</button>
<md-menu #menu="mdMenu">
<div *ngFor="let option of options">
<button md-menu-item>{{option.name}}</button>
</div>
</md-menu>
<h3>Your selected option: </h3>
<p>{{selectedOption.name}}: {{selectedOption.value}}</p>
Share
Improve this question
edited Nov 14, 2016 at 22:49
Marco Scabbiolo
7,4693 gold badges40 silver badges48 bronze badges
asked Nov 14, 2016 at 22:47
mpacempace
931 silver badge6 bronze badges
1 Answer
Reset to default 7You can use a click event on a button to set the selectedOption
:
<div *ngFor="let option of options">
<button md-menu-item (click)="selectedOption = option">
{{option.name}}
</button>
</div>
<p>{{selectedOption?.name}}: {{selectedOption?.value}}</p>
Note the ?
elvis operator. This is used to prevent template errors from reading a property when selectedOption
is not yet defined.
发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745381181a4625233.html
评论列表(0条)