问题标签 [ng-container]

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 投票
0 回答
83 浏览

angular - Angular 11 mat-menu 不会显示表格行中的每个元素

当我单击按钮时,mat-menu 未显示。ng 容器位于垫表中。任何想法 ?

Angular 版本 Angular CLI:11.2.15 节点:14.17.2 操作系统:win32 x64

Angular:11.2.14 ...动画,通用,编译器,编译器cli,核心,表单...平台浏览器,平台浏览器动态,路由器常春藤工作区:是

包版本

@angular-devkit/架构师 0.1102.15

@angular-devkit/build-angular 0.1102.15

@angular-devkit/核心 11.2.15

@angular-devkit/原理图 11.2.15

@角/cdk 11.2.13

@角/cli 11.2.15

@角/元素 12.2.13

@角/语言服务7.2.4

@角/材料 11.2.13

@原理图/角度 11.2.15

@原理图/更新 0.1102.15

rxjs 6.6.7

打字稿4.1.6

0 投票
1 回答
29 浏览

angular - 在嵌入在 ng-switch 中的 ng-container 内进行测试和锚定标记单击

我对角度测试真的很陌生,而且我找不到解决这个问题的方法。我试图对单击锚标记后调用的方法进行测试。这个锚标记位于一个 ng-container 中,它属于 ng-switch 的 case:

该方法将是某种路由器重定向

然后在我的测试中

但是由于无法单击 null ,测试失败并引发错误有人可以帮我解决这个问题吗?非常感谢你

0 投票
1 回答
59 浏览

typescript - Nativescript 中 *ngFor 和 GridLayout 的问题

我的网格布局有问题。我的代码是这个:

我希望看到每个项目的这些列和一行,但我有一些你可以在下图中看到的内容:

在此处输入图像描述

如果您需要查看打字稿

0 投票
0 回答
24 浏览

angular - 如何使用 ngProjectAs 填充 mat-table-cell

我有一个自定义表格组件包装 mat-table,以允许传递定义表格结构(列、值类型等)的模型。表格组件有一个包含一个或多个按钮的操作列。我想ng-container在我的视图中提供这些按钮,如下所示:

然后在表格模板中渲染:

问题是没有渲染...看起来与ng-content在渲染表格行的循环内输出有关,因为如果我移到表格ng-content外,内容会正确渲染。

这有可能实现吗?当前的替代方法是对操作列中的每个可能的按钮使用输出发射器,这会用额外的输出污染表组件,其中大部分不会在给定的表上使用。

0 投票
1 回答
86 浏览

angular - Angular 11+ MatDialog:内部组件的 (ngComponentOutlet) html 不会触发

事实上,我在 MatDialog 中嵌入了 ngComponentOutlet 组件时遇到了更多问题。但让我们从这里开始。

我正在建造的东西

我想在 MatDialog 中显示任意组件。我找到了一种方法,但是虽然它适用于 Angular 9(我找到了一个编写示例的版本),但它不适用于 Angular 11(我的项目所基于的版本)或 Angular 13(@latest )。

观察

  • 当内部 HTML 包含 a<button (click)="close()">Close</button>并且我单击按钮时,close()不会触发内部组件的方法
  • close()如果我将它绑定到(mousedown)事件而不是(click);它会触发该方法 可能适用于其他事件,(click)
  • 当我单击按钮时,会重新加载内部组件(请参阅示例中的控制台日志)
  • 当我单击对话框上的任意位置时,内部组件会重新加载(请参阅示例中的控制台日志);在 Angular 9 中不会发生

Angular 9 没有这个问题。我在下面的两个示例中都使用了完全相同的应用程序代码(两个项目都是用 . 创建的ng new,使用不同的ng版本)。

复制示例

stackblitz 病了,如果它打喷嚏 500 秒,请重试几次。可能是 covid ......

破碎的例子(Angular 11)

工作示例(Angular 9)

  • 在 Angular 9 示例中,MatDialog 按预期工作
  • 在 Angular 11 示例中,MatDialog 无法按预期工作
  • 我已经尝试过 Angular 13 (@latest),问题仍然存在

问题

  1. 为什么会这样?
  2. 我该如何解决这个问题?

原始文件 FFR

app.module.ts

app.component.ts

我的-dialog.service.ts