垫选择滚动不会跳到所选垫选项

时间:2019-07-17 16:32:43

标签: angular angular6 material-design

作为用户,当我从键盘上键入选项时,滚动条不会位于突出显示的项目上。同样,当我选中该复选框时,滚动条会滚动到除坚持所选选项之外的其他位置。

代码为

<form >
   <mat-form-field  appearance="outline" floatLabel="never" class="some-class">
      <mat-select #multiselect  [compareWith]="somefn" disableOptionCentering="true" disableRipple="true" panelClass=some-class" placeholder="{{label}}" [formControl]="control" multiple class="some-class" (selectionChange)="somefn()">
      <mat-select-trigger>
         <span *ngIf="control.value?.length == allSelectedNum; else otherBlock">
         ALL
         </span>
         <ng-template #otherblock>
            ##more code
         </ng-template>
      </mat-select-trigger>
      <mat-option #allSelected [value]="'0'" (click)="someclickfn()">Select/Deselect All</mat-option>
      <mat-option *ngFor="let apple of appleList" [value]="apple" (click)="someotherclk(apple)">{{apple.name}}</mat-option>
      </mat-select>
   </mat-form-field>
</form>

1 个答案:

答案 0 :(得分:-1)

我有同样的问题。就我而言,原因是我将垫子选项的高度与原始垫子选项进行了比较,现在,当选择物料时,它试图将所选物料集中或放置在某个位置,但是由于所有下拉菜单的大小发生了变化,我认为这是在计算错误定位并滚动到完全不同的项目。

即使在具体示例中也可以复制 https://stackblitz.com/angular/lvlxpvkrnlk?file=app%2Fselect-optgroup-example.ts

只需将mat-option的样式更改为类似的内容

.option-style {
  height: 15px !important;
  font-size: 12px !important;
}

并在中间添加更多项目,然后尝试在中间选择一些内容 在这里,我试图思考情况: https://stackblitz.com/edit/angular-lmkqjv?file=app%2Fselect-optgroup-example.css