问题标签 [angular-renderer2]

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 回答
35 浏览

html - 使用 Angular 将 div 动态添加到具有相同类的元素

我需要向所有具有 class 的元素添加一个带有 class 的 div '.cart-list-value .delete-product',其中包含背景图像.cart-list-item。我能够使用 class 获取所有元素.carl-list-item ,但是当我添加新元素时,它只是添加到最后一个元素。

0 投票
1 回答
396 浏览

angular - 测试中的 Renderer2、RendererFactory2 失败 - TypeError:无法读取未定义的属性“createElement”

我在 Angular 9 应用程序中有一个首选项服务,它创建一个脚本标签,它使用来自 Renderer2 的“createElement”。当我尝试模拟 Renderer2 时,无法识别 createElement。

这是我的 service.ts :

这是我的 service.spec.ts : describe('MyServer', () => {

当我运行测试时出现此错误TypeError: Cannot read property 'createElement' of undefined

请有任何想法,

0 投票
1 回答
678 浏览

javascript - 从渲染器迁移到渲染器2

我将一个项目从 Angular 7 迁移到 8,我不得不将 Renderer 类更改为 Renderer2,我面临以下错误:

渲染器的课程如何:

我用 renderer2 试过的

对于 renderer2,creatElement 方法尽管名称相同,但不再以相同的方式工作,而且我从文档中不太了解应该进行此转换的正确方式。

0 投票
1 回答
275 浏览

angular - 角度样式不适用于 renderer2 创建的元素

内部应用组件

样式不适用于在“app.component.css”中使用 renderer2 创建的“div”和“p”标签。

我什至看不到使用 viewchild,ngif 也不起作用,这不属于应用程序组件。

我如何在同一个组件中应用样式** 除了全局添加样式,我怎样才能工作。我是*ngifAngular 新手,请帮忙。

0 投票
1 回答
428 浏览

angular - renderer2 在父节点后追加子节点

我想将新的子节点附加after到父节点,但appendChild将其附加inside。这是我所拥有的:

我的component.html

我的component.ts

这会插入在节点div内部创建的新内容,如下所示:parent

在此处输入图像描述

但是我如何将它附加到parent节点之外?像这样:在此处输入图像描述

0 投票
4 回答
1968 浏览

css - Angular:如何添加全局 CSS(例如添加到正文),但仅限于一个特定页面?

如何在 Angular 中为一页添加单独的 CSS?

这是我需要的 CSS,根据如何从打印页面中删除 URL?

::ng-deep但是在这里用or将CSS 放入组件中ViewEncapsulation.None没有帮助,因为当导航离开页面时,页面的 CSS 不会被删除。

我添加了一个Stackblitz,它清楚地解释了这个问题。


我想出了一个潜在的解决方案,但它不起作用:

为什么它不起作用:

虽然它对 CSS 有帮助<body>,但对 CSS 没有帮助@page。也许这个问题可以更好地概括为“如何添加全局 CSS,但在我们离开页面时将其删除?”。

0 投票
1 回答
112 浏览

angular - 将数据发送到 Angular 工具提示指令

我在网上找到了一个 Tooltip 指令的示例。我需要扩展它,以便我可以将数据传递给工具提示并在 *ngFor 中呈现它。到目前为止我有

app.component.html

工具提示.directive.ts

我可以记录数据以便接收它,但我不确定 createEmbeddView、rootNodes 和 appendchild 是如何工作的(我正在从一个示例中工作)。我想要的是包含 Person1、Person2 的工具提示。我怎样才能做到这一点?

StackBlitz 这里

编辑:

我认为尝试这样做会让我更接近我想要的并更好地解释它,但现在工具提示根本没有显示。这是正确的方法吗?

0 投票
1 回答
178 浏览

css - 角度渲染器 setStyle 不会应用线性渐变

Angular 的 renderer2 不会应用线性渐变 CSS。谁能看到我错过了什么?

这是一个stackblitz repro

0 投票
0 回答
811 浏览

angular - 使用 renderer2 将焦点设置在输入字段上

我有一个像下面这样的按钮,当我按下“空格”时它会打开一个模式

我想将焦点放在下面的输入字段上

openLg 函数是

我也导入了 renderer2

但是当我按下空格按钮时,它会显示以下错误

解决办法是什么?我究竟做错了什么?

0 投票
1 回答
595 浏览

angular - 加载了角度事件侦听器文档

我试图在加载文档选择角度组件中的所有前置元素。

ngAFterViewChecked、ngAfterContentChecked、ngAfterContentInit基本上在文档加载之前运行了 30 次,这会降低我的应用程序的速度。

因此,剩下 ngAfterViewInit,从逻辑上讲,它会起作用,但由于文档尚未加载,因此什么也不做。所以,我在想一个事件监听器,就像在 vanilla js 中一样。

这没有按预期工作,但我还没有看到任何其他方法完全尝试这种方式,所以我认为类似的方法可以工作。

注意:我的pre标签是从[innerHTML]="content".

有任何想法吗?