【angular-gojs使用笔记】使用Data和Template创建Node

这篇笔记介绍了如何在Angular应用中结合GoJS库,通过数据和模板创建具有不同特性的Node。通过将节点的颜色和文本信息保存在数据数组中,并使用go.Binding映射到节点对象,实现了模板复用,简化了节点创建过程。同时,利用Diagram的nodeTemplateMap,可以定义多个模板,通过category属性匹配不同的节点数据,实现更灵活的节点展示。
摘要由CSDN通过智能技术生成

在实际使用过程中,我们常常会创建相似的节点。例如:

const node1 =
  $(go.Node, "Auto",
    $(go.Shape,
      {
    figure: "RoundedRectangle",
        fill: "lightblue" }),
    $(go.TextBlock,
      {
    text: "Alpha",
        margin: 5 })
  )
diagram.add(node1);

const node2 =
  $(go.Node, "Auto",
    $(go.Shape,
      {
    figure: "RoundedRectangle",
        fill: "pink" }),
    $(go.TextBlock,
      {
    text: "Beta",
        margin: 5 })
  );
diagram.add(node2);

diagram.add(
  $(go.Link,
    {
    fromNode: node1, toNode: node2 },
    $(go.Shape)
  ));

在这里插入图片描述
我们创建了两个节点,并将它们通过link链接到了一起。
其中两个节点除了背景颜色以及文本框中的文字有区别,其它部分都是一样的,我们便可以将其抽象成一个模板。
现在我们将其文字与颜色提取,作为节点数据保存到一个数组中:

/** 注
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值