Angular 中的美人鱼整合问题
Problems with Mermaid integration in Angular
我对 Mermaid 的集成有疑问,因为尽管检查了文档并且其他人在 Whosebug 和其他论坛中要求这个库,但他们给出的示例也是启动这样一个项目。
组件 TS
import { Component, OnInit } from "@angular/core";
import * as mermaid from "mermaid";
@Component({
selector: "app-root",
templateUrl: "./app.component.html",
styleUrls: ["./app.component.css"]
})
export class AppComponent implements OnInit {
title = "testMermaid";
public ngOnInit(): void {
mermaid.initialize({
theme: "forest"
});
}
}
HTML
<div class="mermaid">
graph TD A[Hard]
-->|Text| B(Round) B
--> C{Decision} C
-->|One| D[Result 1] C
-->|Two| E[Result 2]
</div>
我希望你能帮我解决这个问题,因为我真的不明白为什么它不启动任何东西。
尝试将以下内容添加到您的组件中。
@ViewChild('mermaid', { static: true }) mermaid: ElementRef;
并像这样将 #mermaid
添加到您的 div 中:
<div #mermaid class="mermaid">
</div>
添加 #mermaid
是在创建一个名为 "mermaid" 的模板变量,并允许您在打字稿中获取对本机元素的引用。
我的想法是该元素在 ngOnInit() 中不可用,但您可以自己尝试将 console.log(this.mermaid.nativeElement);
添加到 ngOnInit() 以查看它是否可用(已添加到 DOM) 还没有。
相反,尝试在您的内容上实施 AfterContentInit,并将您当前在 ngOnInit() 中的代码移动到 ngAfterContentInit()。
我对 Mermaid 的集成有疑问,因为尽管检查了文档并且其他人在 Whosebug 和其他论坛中要求这个库,但他们给出的示例也是启动这样一个项目。
组件 TS
import { Component, OnInit } from "@angular/core";
import * as mermaid from "mermaid";
@Component({
selector: "app-root",
templateUrl: "./app.component.html",
styleUrls: ["./app.component.css"]
})
export class AppComponent implements OnInit {
title = "testMermaid";
public ngOnInit(): void {
mermaid.initialize({
theme: "forest"
});
}
}
HTML
<div class="mermaid">
graph TD A[Hard]
-->|Text| B(Round) B
--> C{Decision} C
-->|One| D[Result 1] C
-->|Two| E[Result 2]
</div>
我希望你能帮我解决这个问题,因为我真的不明白为什么它不启动任何东西。
尝试将以下内容添加到您的组件中。
@ViewChild('mermaid', { static: true }) mermaid: ElementRef;
并像这样将 #mermaid
添加到您的 div 中:
<div #mermaid class="mermaid">
</div>
添加 #mermaid
是在创建一个名为 "mermaid" 的模板变量,并允许您在打字稿中获取对本机元素的引用。
我的想法是该元素在 ngOnInit() 中不可用,但您可以自己尝试将 console.log(this.mermaid.nativeElement);
添加到 ngOnInit() 以查看它是否可用(已添加到 DOM) 还没有。
相反,尝试在您的内容上实施 AfterContentInit,并将您当前在 ngOnInit() 中的代码移动到 ngAfterContentInit()。