问题标签 [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 回答
49 浏览

angular - 构建 cdk modal - ngOnInit 未触发且未传递数据

我正在尝试构建modals仅依赖于CDK. 模态是通过服务打开的,我通过entryComponent以模态渲染它。

这是示例:https ://stackblitz.com/edit/angular-ofzpks?file=src%2Fapp%2Fmodal.component.ts

在模态本身中,我正在使用工厂创建组件:

我有两个问题:

  1. 我必须componentRef.instance.ngOnInit();手动触发
  2. 我将一些数据传递给该组件:componentRef.instance.name = this.data.name;但组件从不呈现它
0 投票
2 回答
11071 浏览

angular - 无法从 BackdropClick 关闭 Angular 材质 Cdkoverlay

我目前正在使用Angular Material cdkoverlay并希望在单击屏幕上除叠加层以外的任何其他位置时将其关闭。我已经订阅了,backdropClick()但我无法启动它。

创建和启动覆盖的一切工作正常,它只是响应外部点击。

如果我添加它hasBackdrop: trueOverlayConfig它会创建深灰色背景,并且外部点击有效,但我不想要一个可见的背景,比如选择组件。

0 投票
1 回答
931 浏览

angular - 拖放 - Angular Material 2 Experimental CDK - 重新排列水平堆叠的项目

我正在使用刚刚添加到 Angular Material Experimental CDK 中的全新拖放功能。我正在尝试水平堆叠可拖动的项目,但是当我这样做时,它会破坏拖放功能。关于我做错了什么的任何想法?

这是我的堆栈闪电战:https ://stackblitz.com/edit/angular-basic-horizo​​ntal-drag-drop

0 投票
1 回答
1001 浏览

angular - Angular CDK 门户从门户中分离

我正在使用 Angular CDK 的门户创建一个错误消息组件,该组件需要在正文(因此使用门户)中呈现在其他所有内容之上。

它运行良好,尽管在错误消息本身上我需要能够从组件内关闭它。

我正在使用服务来设置门户并打开/隐藏消息。问题是我无法从错误消息组件本身中调用 close 方法,因为那时我有一个循环依赖关系并且它都崩溃了。

我知道通过 CDK 的覆盖,您可以从其组件中引用它,有没有办法对门户做同样的事情,以便我可以从错误消息组件中分离门户?

谢谢。

这是服务代码

0 投票
3 回答
17814 浏览

angular - 从 Angular 6 材质树中的子节点获取父层次结构

我正在按照教程在 Angular 6 中实现 cdk 树。我创建了一个树结构,现在我想通过使其可点击来从子级获取父层次结构,而有诸如 getDescendants 之类的方法来获取节点的子级,副反之亦然。如何从子节点或叶节点获取父层次结构。

0 投票
2 回答
2123 浏览

angular - 在角度 cdk 覆盖上获取活动位置?

有没有办法让附加组件覆盖活动位置?例如,我说要在上方打开一个工具提示,但这无法完成,并且叠加层将在下方打开它。我想从工具提示中添加一个指向我的元素的箭头,如果覆盖在元素上方/下方,我现在需要正确定位箭头

0 投票
2 回答
1997 浏览

angular - @angular/cdk/overlay 全局和居中位置不起作用

我正在尝试使用新的@angular/cdk,但位置策略似乎不起作用,只想显示一个以背景为中心的模态,我知道我可以为窗格设置一个类并在那里设置固定定位但是,在这种情况下,我不知道 positionStrategy 配置是什么,我希望尽可能适应 @angular/cdk 功能。

这里的例子:https ://stackblitz.com/edit/angular-9nthad?file=src%2Fapp%2Fhello.component.ts

0 投票
1 回答
357 浏览

angular - Angular-CDK SVG 没有出现

我无法在 CDK 层中显示 SVG 图标。我有以下代码:

应用菜单.html

应用程序菜单.component.ts

joomla.svg

我得到如下 HTML 输出:

看起来好像 HTML 输出很好。我需要它显示在菜单网格中。它在用 Chrome 进行检查后显示了 HTML,看起来它是正确的,但什么也没有出现。注意:图标打开的背景不是白色的。所有其他图标都显示,但它们只是材料图标。为什么 SVG 图标不显示?

0 投票
1 回答
1811 浏览

angular - 如何访问 [cdkPortalOutlet] 中的组件引用

我正在实现 Angular 的 CDK 门户来加载动态组件。我能够使用给定的 html 和 app.ts 快速轻松地将组件加载到页面上。

加载组件后,我想访问它的接口方法doSomething(),但是我似乎无法访问已加载的组件。

是否可以访问该组件?


类/接口:

html:

应用程序.ts


我试图通过以下方式给出类型的指示:

但是,由于以下错误,这样做使我无法设置我的 this.portal:

我觉得令人费解。

0 投票
2 回答
6371 浏览

angular - 附加到组件时如何调整 Angular CDK 覆盖背景的大小

我想在特定组件上覆盖 CDK。我使用flexibleConnectedTo()将覆盖的内容部分正确定位在组件上。我不知道如何让覆盖背景覆盖组件而不是整个页面。该类cdk-overlay-container具有CSS

我知道我可以覆盖 CSS,但是我正在寻找的是一种 Angular CDK 方法来调整大小cdk-overlay-container以适应组件的边界。

我通读了文档,但是我看不到这样做的方法。我是否遗漏了文档中的某些内容?