小编Che*_*dar的帖子

如何在分页更改时滚动到材料表的顶部

我遇到了一个问题,在材质表中,我单击“下一步”按钮,滚动保持在底部,而它应该滚动到顶部。

<mat-table class="table-container" fxFlex="100" [dataSource]="allUsersDataSource">
  <ng-container matColumnDef="firstName">
    <mat-header-cell fxFlex="25" *matHeaderCellDef> First Name </mat-header-cell>
    <mat-cell fxFlex="25" *matCellDef="let element"> {{element.first_name}} </mat-cell>
  </ng-container>

  <ng-container matColumnDef="lastName">
    <mat-header-cell fxFlex="25" *matHeaderCellDef> Last Name </mat-header-cell>
    <mat-cell fxFlex="25" *matCellDef="let element"> {{element.last_name}} </mat-cell>
  </ng-container> 
     
  <mat-header-row *matHeaderRowDef="allUsersColumns; sticky: true"></mat-header-row>
  <mat-row *matRowDef="let row; columns: allUsersColumns;"></mat-row>
</mat-table>

<mat-paginator #allUsersPaginator [pageSizeOptions]="[25,50,100]" (page)="onAllUserPaginateChange($event)"
    [length]="allUserPagination.length" [pageSize]="25" showFirstLastButtons></mat-paginator>
Run Code Online (Sandbox Code Playgroud)

这是后面的代码

onAllUserPaginateChange(event: any) {
  window.scroll(0,0);
}
Run Code Online (Sandbox Code Playgroud)

pagination angular-material angular

6
推荐指数
1
解决办法
1万
查看次数

单击内部后如何禁用材料扩展的 mde 弹出窗口的关闭

我正在通过导入材料扩展 mde popopver 使用的弹出窗口添加聊天机器人。但是当我尝试聊天或单击弹出框时,弹出框关闭,是否有任何真/假触发器,以防止单击后弹出框关闭?任何帮助表示赞赏。我想在打字稿中实现这一点,而不是 javascript。

这就是说 xyz.component.html这是我到目前为止所做的。当弹出窗口关闭时,我无法在此窗口中聊天,一旦我单击它

  <button class="mdc-fab app-fab--absolute"  
     [mdePopoverTriggerFor]="appPopover"
      mdePopoverTriggerOn="click" aria-label="Favorite" mat-fab ><mat-icon>
     <span class="mdc-fab__icon material-icons">textsms</span> 
  </mat-icon></button>   

  <mde-popover #appPopover="mdePopover" [mdePopoverOverlapTrigger]="false"> 
       Hi this is the chatbot. 
  </mde-popover>  
Run Code Online (Sandbox Code Playgroud)

material-ui angular6

3
推荐指数
1
解决办法
2089
查看次数

当单击外部或其他菜单项时,如何折叠星状 NBmenu 侧栏中的菜单项

我在我的示例项目中使用星云菜单。我有一个场景如下。我假设侧边栏中有 4 个菜单项,每个菜单项有 4 到 5 个子菜单。

例如。

menu 1 
    submenu 1
    submenu 2
menu 2
    submenu 1 
    submenu 2
    submenu 3
menu 3
menu 4
Run Code Online (Sandbox Code Playgroud)

等等。

现在,当我单击菜单 1 时,我可以看到 2 个菜单,现在我单击子菜单 2 ,它会将我定向到该特定页面。现在,如果我单击菜单 2,我可以看到 3 个子菜单,如果我单击子菜单 3,它会将我重定向到该特定页面,

现在的问题是,两个菜单都在侧边栏中打开,我可以看到所有子菜单。如果其他菜单打开,我想关闭侧边栏中的上一个菜单。这在星云菜单中可能吗?任何帮助表示赞赏。

请查看以下链接以供参考,(也可以尝试单击侧边栏菜单,与我的场景相同。)

https://akveo.github.io/nebular/docs/components/menu/api#nbmenucomponent

这是我的侧边栏菜单代码供参考。

import { Component, OnDestroy } from '@angular/core';
import { delay, withLatestFrom, takeWhile } from 'rxjs/operators';
import {
  NbMediaBreakpoint,
  NbMediaBreakpointsService,
  NbMenuItem,
  NbMenuService,
  NbSidebarService,
  NbThemeService,
} from '@nebular/theme';

import { StateService } from '../../../@core/data/state.service';

// TODO: move layouts into the …
Run Code Online (Sandbox Code Playgroud)

typescript angular nebular

3
推荐指数
1
解决办法
9118
查看次数

如何异步订阅 matdialog 服务以取消激活守卫?

我已经使用角度表单验证实现了 candeactivate 保护。如果用户单击 ngForm 字段。并尝试导航到不同的选项卡,用户将获得一个自定义确认弹出窗口,其中会显示“放弃更改?”并返回 true 或 false。

这是我的守卫

import { NgForm } from "@angular/forms";
import { ComponentCanDeactivate } from './component-can-deactivate';

export abstract class FormCanDeactivate extends ComponentCanDeactivate {

abstract get form(): NgForm;

canDeactivate(): boolean {
    return this.form.submitted || !this.form.dirty;
}
}
Run Code Online (Sandbox Code Playgroud)

组件保护

import { HostListener } from "@angular/core";

export abstract class ComponentCanDeactivate {

abstract canDeactivate(): boolean;

@HostListener('window:beforeunload', ['$event'])
unloadNotification($event: any) {
    if (!this.canDeactivate()) {
        $event.returnValue = true;
    }
}
}
Run Code Online (Sandbox Code Playgroud)

现在这是我的确认弹出代码。我的问题是如果我使用默认的 confirm() 方法(下面代码中的注释行),它会弹出窗口,并要求是或否,这很完美。但是如果我在这里使用自定义材质弹出窗口,我必须订阅 afterclosed() 方法,该方法异步执行,而我必须等到该方法执行后才能继续。我怎样才能做到这一点?

import { Injectable } from …
Run Code Online (Sandbox Code Playgroud)

subscribe observable angular-material angular candeactivate

2
推荐指数
1
解决办法
1517
查看次数

如何在 linq 中添加条件连接?

我想根据我传递的参数在 linq 中添加 2 个不同的连接。说“isHub”是参数。If isHub = true : 我想返回城市列表 If isHub = false : 我想返回国家列表

这是我当前的查询

   public List<ControlTowerCity> GetControlTowerMapData(bool IsHub)
    {
        using (var context = new LadingControlTowerEntities())
        {
            var mapcityDetail =
            (from SLD in context.ShipmentLocations 
             join CMD in context.CityMasters on SLD.City equals CMD.ID

             select new ControlTowerCity
             { 
                 Name = CMD.Name,

             }).ToList();
            return mapcityDetail;
        }
    }
Run Code Online (Sandbox Code Playgroud)

这里是想添加这样的加入

if(ishHub == true){
  join CMD in context.CityMasters on SLD.City equals CMD.ID
} 
else {
 join CMD in context.CountryMasters on SLD.Country equals CMD.ID
} …
Run Code Online (Sandbox Code Playgroud)

c# linq api

1
推荐指数
1
解决办法
1711
查看次数