我知道如何在选择更改时获取所选选项值(如下所示),但如何获取所选选项的显示文本?
模板:
<select (change)="onChange($event.target.value)">
<option *ngFor="let option of activeDropdown.options" value="{{option.value}}">
{{option.text}}
</option>
</select>
Run Code Online (Sandbox Code Playgroud)
零件:
onChange(value: string) {
console.log(value);
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
我在 ng-bootstrap 中使用 ngb-accordion。切换标头会导致其子组件重新初始化。例如,切换标题会导致下拉列表重置。看起来这是因为<div class="card-block"></div>在隐藏面板时被删除。
即使组件“隐藏”在手风琴中,我如何保持组件的状态?
模板文件:
<ngb-accordion activeIds="side-bar-accordion-1" (panelChange)="beforeChange($event)">
<div [class.hide-card-block]="status">
<ngb-panel id="side-bar-accordion-1" class="foo">
<template ngbPanelTitle>
<div class="title">Axes</div>
</template>
<template ngbPanelContent>
<!--This is the component whose state I want to maintain:-->
<side-bar-axes></side-bar-axes>
</template>
</ngb-panel>
</div>
<ngb-panel id="side-bar-accordion-2">
<template ngbPanelTitle>
<div class="title">Fancy</div>
</template>
<template ngbPanelContent>
blah blah
</template>
</ngb-panel>
<ngb-panel id="side-bar-accordion-3">
<template ngbPanelTitle>
<div class="title">Settings</div>
</template>
<template ngbPanelContent>
blah blah
</template>
</ngb-panel>
</ngb-accordion>
Run Code Online (Sandbox Code Playgroud)
组件打字稿文件:
import { Component, ViewChildren, ViewEncapsulation } from '@angular/core';
import { NgbPanelChangeEvent } from '@ng-bootstrap/ng-bootstrap'; …Run Code Online (Sandbox Code Playgroud)