问题标签 [angular-cdk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5913 浏览

angular - 类扩展了 MatTableDataSource 和带有过滤的表

这是我的爱好项目,由于这个问题,它已经停滞了一段时间。这可能是一个简单的问题,但我对 Angular 和 JS 的了解相当有限。不过我的代码在下面(我已经缩短了一点),它在某种程度上是有效的。它正在从服务器获取数据,然后显示在客户端。那里没有问题,但是现在当我尝试进行客户端过滤时,什么也没有发生。字面上地。我正在输入过滤器输入框,但什么也没有。不过滤表行。

我在这里想知道两件事:

  1. 我是否使用了正确的方法(我可以扩展 MatTableDataSource)吗?
  2. 我做错了什么(如果我可以扩展 MatTableDataSource)?

我的数据.ts

MyData.service.ts

我的数据.datasource.ts

MyData.component.ts

MyData.component.html

0 投票
3 回答
1994 浏览

angular - Angular 6 滚动事件

我使用 angular 的 cdkScrollable 在我的组件上实现了滚动事件。

我的代码如下所示

home.component.html有以下代码

问题是 hide 的值即使滚动超过 64 也不会改变,但在 console.log 中它会改变。

我究竟做错了什么 ?

0 投票
2 回答
561 浏览

angular - 无法更新 cdk-connected-overlay 的最小宽度

我正在为此组件使用模板引用变量。这是我为下拉选项创建叠加层的方式

即使 minwidth 值更新后, cdkconnectedoverlay 的宽度也不会改变

我尝试使用下面的覆盖参考更新它是代码

接下来我阅读了overlayref

但这始终是未定义的,坚持这一点任何人都可以帮助我使用角度 cdk 5.XX 版本

0 投票
0 回答
308 浏览

angular - 升级到版本 7 后未加载 Angular Material App

当我将我的应用程序升级到 Angular、Angular Material 和 CLI 的第 7 版时。 我的应用程序挂在加载屏幕上。经过大量挖掘后,我找到了问题的根源,它与Angular CDK的BreakpointObserver有关。

以下是重现问题的方法:

  • 创建一个新的 Angular 7 应用程序
  • ng 添加@angular/material
  • 在 AppComponent 中添加以下 getter:

    构造函数(私有断点观测器:断点观测器){}

    get height(): Observable { return this.breakpointObserver.observe([Breakpoints.Handset]) .pipe(map(bp => bp.matches ? 100 : 50)); }

  • 将以下内容添加到 AppComponent 模板中的元素:

    [style.minHeight.px]="高度 | 异步"

有人知道这里有什么问题吗?它是 Angular CDK 中的错误吗?

我已经在 Angular 问题中发布了一个问题: https ://github.com/angular/angular/issues/26586

但是这个问题被关闭了,因为它没有被承认是一个错误。

0 投票
2 回答
5663 浏览

angular - Angular 7 - 使用父可放置容器拖放

我正在尝试使用新的 Angular 7 CDK 拖放来移动我网站中动态添加的元素列表。

使用这个示例,取自 Angular 文档示例并根据我的需要进行修改,您可以看到我有一个带有可放置容器的元素列表。

问题是当可拖动元素从另一个组件生成时,它们不会将父可放置作为要使用的引用可放置容器。相反,CDK Draggable 对象中的可放置容器属性是null.

我尝试设置指令中的cdkDragRootElement属性CdkDrag以检查是否可以以某种方式引用父元素,但它使元素移动整个父元素。这不是预期的行为。

也许我错过了 CDK Draggable 属性或在 CDK Droppable 容器中引用列表元素中的父可放置列表?

这是示例中的“相关”代码:

cdk-拖放-排序-example.html

测试/test.component.ts

测试/test.component.html

编辑

预期结果:

cdk-拖放-排序-example.html

测试/test.component.html

通过父母找到选择器并检查它是否具有cdkDropList指令/实例并将其附加到cdkDrag.

0 投票
1 回答
4543 浏览

angular - 带有 mat-autocomplete 的 cdk-virtual-scroll 工作不规则

我尝试在 mat-autocomplete 中使用 cdk-virtual-scroll:

但是,虚拟滚动在此设置中的工作不规律。我生成了 200 个选项,但是如果我使用滚动条向下箭头(chrome)缓慢滚动,它会停在 14 左右。使用 mat-select 的类似设置没有这个问题。

有关整个示例设置(使用 cdk-virtual-scroll 的 mat-autocomplete 和 mat-select),请参阅https://stackblitz.com/edit/angular-xv1n2e?file=src/app/app.component.html 。

有没有人使用 cdk-virtual-scroll 的工作垫自动完成?

0 投票
1 回答
5794 浏览

angular - 如何为表 tbody 使用 cdk-virtual-scroll-viewport

由于 html 解析 tr 然后 td,使用<cdk-virtual-scroll-viewport>中断视图是否有任何 cdkVirtualScrollViewport 作为指令<tbody>

0 投票
2 回答
5680 浏览

angular - Angular CDK 虚拟滚动无限循环

我正在尝试使用 CDK virtual-scroll 为项目列表实现无限循环滚动

我到了放弃的地步。我无法做到这一点,我怎样才能实现这个 CDK 虚拟滚动?

这是我的代码

现场堆栈闪电战

0 投票
4 回答
12427 浏览

angular - Angular CDK 使用 cdkDropListConnectedTo 连接多个拖放区

我正在创建一个带有泳道的简单板界面,例如 Jira 泳道或 trello 板

在此处输入图像描述 红线显示电流

蓝色显示我想要实现的流程

我有三列名为“待办事项”、“进行中”和“完成”。目前我可以将一个项目从 To Do 拖到 In Progress ,从 In Progress 拖到 Done ,从 Done 拖回 To do using cdkDropListConnectedTo

我想知道谁可以将项目从“完成”移动到“待办”和“进行中”,同样如何将项目从“进行中”移动到“完成”和“待办”以及“ “完成”到“进行中”和“待办事项”。

我想到的第一件事是传递多个引用,cdkDropListConnectedTo但这没有用。如果有人能指出我正确的方向,我将不胜感激。

谢谢

这是我到目前为止所写的内容: https ://stackblitz.com/edit/angular-mpedfr?file=src%2Fapp%2Fapp.component.html

0 投票
2 回答
2263 浏览

angular - 如何访问 matTabNavBar.updateActiveLink 方法

MatTabNav Docs展示了一种可用于更新mat-tab-nav. 似乎不存在如何实现这一点的示例,源代码也没有更好地了解如何实现。

这是我的模板中的 html:

我尝试使用以下两个示例访问该方法,但是似乎没有一个示例允许我updateActiveLink访问this.tabs.

尝试失败 1

失败的尝试 2

令人困惑的是,它表明我需要将对元素的引用传递给项目this.something.updateActiveLink( this.tabs ),因此我尝试MatTabNav在 custructor 中导入并像这样访问它_matTabNav.updateActiveLink( this.tabs )

我的最终目标

当路线不包含我的选项卡时,我打算突出显示第一个链接。此外,当路线发生变化时,我希望标签能够反映这种变化。所以第一行最终会选择相同的

我的路由都路由到同一个组件