我正在寻找图表 Javascript 库来为我的 Angular 项目创建某种顶级动态框图。谁能告诉我美人鱼是否与 Angular 4 兼容?另外请让我知道是否还有其他好的图表库可供使用。谢谢!
问问题
3563 次
1 回答
13
它很容易使用。
- 将美人鱼添加到您的项目中:
npm i mermaid
- 在要使用mermaid的视图中,导入mermaid并调用init方法
例子:
import { Component, OnInit } from "@angular/core";
import * as mermaid from "mermaid";
@Component({
selector: "MermaidTest",
template: `
<div class="mermaid">
graph LR
A-->B
</div>`
})
export class MermaidTest implements OnInit {
public ngOnInit(): void {
mermaid.initialize({
theme: "forest"
});
}
}
在这种情况下,您必须转义诸如 { 之类的字符。如果您碰巧将图形内容作为字符串,您可以使用 mermaidAPI 代替:
import { AfterContentInit, Component, ViewChild } from "@angular/core";
import * as mermaid from "mermaid";
@Component({
selector: "MermaidTest",
template: `<div #mermaid></div>`
})
export class MermaidTest implements AfterContentInit {
@ViewChild("mermaid")
public mermaidDiv;
public ngAfterContentInit(): void {
mermaid.initialize({
theme: "dark"
});
const element: any = this.mermaidDiv.nativeElement;
const graphDefinition = "graph TB\na-->b";
mermaid.render("graphDiv", graphDefinition, (svgCode, bindFunctions) => {
element.innerHTML = svgCode;
});
}
}
有关更多详细信息,请参阅https://mermaidjs.github.io/#/mermaidAPI
于 2018-04-19T10:51:43.533 回答