Angular指令:将第一个指令的输出作为第二个指令的模板输入传递
创始人
2024-10-31 00:00:24
0

要将第一个指令的输出作为第二个指令的模板输入传递,可以使用Angular的@Input装饰器和动态组件来实现。以下是一个示例代码:

首先,创建第一个指令,将其命名为FirstDirective:

import { Directive, ElementRef } from '@angular/core';

@Directive({
  selector: '[firstDirective]'
})
export class FirstDirective {
  constructor(private elementRef: ElementRef) { }

  getText(): string {
    return this.elementRef.nativeElement.innerText;
  }
}

然后,创建第二个指令,将其命名为SecondDirective,并在其模板中使用第一个指令的输出:

import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';

@Directive({
  selector: '[secondDirective]'
})
export class SecondDirective {
  @Input() secondDirectiveTemplate: TemplateRef;

  constructor(private viewContainerRef: ViewContainerRef) { }

  ngOnInit() {
    const text = this.secondDirectiveTemplate.createEmbeddedView(null).rootNodes[0].innerText;
    console.log(text); // 输出第一个指令的输出

    // 将第一个指令的输出作为模板输入传递给第二个指令
    this.viewContainerRef.createEmbeddedView(this.secondDirectiveTemplate, { text });
  }
}

最后,在组件的模板中使用这两个指令:

这是第一个指令的输出
{{ text }}

这样,第二个指令就可以获取第一个指令的输出,并将其作为模板输入传递给自己的模板中。

相关内容

热门资讯

外挂秘籍!werplan辅助软... 外挂秘籍!werplan辅助软件,拱趴大菠萝有什么挂-真是一直都是有辅助技巧(哔哩哔哩)1、玩家可以...
外挂指引!约局吧德州可以透视吗... 外挂指引!约局吧德州可以透视吗,佛手在线大菠萝辅助-切实是真的有辅助技巧(哔哩哔哩)1、全新机制【约...
外挂模块!newpoker脚本... 外挂模块!newpoker脚本,德普之星怎么设置埋牌-好像一直总是有辅助软件(哔哩哔哩)newpok...
外挂指南!德州透视竞技联盟,哈... 外挂指南!德州透视竞技联盟,哈糖大菠萝万能挂-竟然一直总是有辅助软件(哔哩哔哩)1、哈糖大菠萝万能挂...
外挂要领!聚星ai辅助工具收费... 外挂要领!聚星ai辅助工具收费多少,哈糖大菠萝万能挂-切实存在有辅助工具(哔哩哔哩)1、聚星ai辅助...
外挂经验!aa poker辅助... 外挂经验!aa poker辅助,约局吧如何查看是否有挂-果然是有辅助方法(哔哩哔哩)1、完成约局吧如...
外挂阶段!大菠萝免费辅助器,哈... 外挂阶段!大菠萝免费辅助器,哈糖大菠萝有挂吗5个常用方法-一直是有辅助app(哔哩哔哩)哈糖大菠萝有...
外挂窍要!菠萝辅助器免费版的特... 外挂窍要!菠萝辅助器免费版的特点,we poker免费辅助器-竟然一直都是有辅助app(哔哩哔哩)1...
外挂烘培!智星菠萝透视,如何下... 外挂烘培!智星菠萝透视,如何下载德普之星辅助软件-果然真的是有辅助技巧(哔哩哔哩)所有人都在同一条线...
外挂阶段!约局吧透视挂下载,智... 外挂阶段!约局吧透视挂下载,智星德州插件2024最新版-切实是真的有辅助工具(哔哩哔哩)1、完成智星...