можем ли мы изменить цвет узла в реакции + графике

Я использую пакет ниже. У меня есть первый и последний узел. Я хочу изменить цвет фона.

nodes: [
      { id: 'Node 1', label: "Node 1", title: "node 1 tootip text" ,first:true},
      { id: 2, label: "Node 2", title: "node 2 tootip text" },
      { id: 3, label: "Node 3", title: "node 3 tootip text" },
      { id: 4, label: "Node 4", title: "node 4 tootip text" },
      { id: 5, label: "Node 5", title: "node 5 tootip text",last:true }
    ],

первый узел имеет first:true а также last:true. мы можем изменить цвет их фона?? как красный и зеленый https://www.npmjs.com/package/react-graph-vis

вот мой код https://stackblitz.com/edit/react-yvpt5j

2 ответа

Решение

Просто добавь color свойство

Рабочая демонстрация

 const graph = {
    nodes: [
      { id: 'Node 1', label: "Node 1", title: "node 1 tootip text" ,first:true,  color: "red" },
      { id: 2, label: "Node 2", title: "node 2 tootip text" },
      { id: 3, label: "Node 3", title: "node 3 tootip text" },
      { id: 4, label: "Node 4", title: "node 4 tootip text" },
      { id: 5, label: "Node 5", title: "node 5 tootip text",last:true, color: 'Green' }
    ],
    edges: [
      { from: 'Node 1', to: 2,label:'dddddd' },
      { from: 'Node 1', to: 3,label:'adasd' },
      { from: 2, to: 4 },
      { from: 2, to: 5 }
    ]
  };

или вы можете изменить его динамически на основе первого и последнего свойств

    let obj = { nodes: [
          { id: 'Node 1', label: "Node 1", title: "node 1 tootip text" ,first:true},
          { id: 2, label: "Node 2", title: "node 2 tootip text" },
          { id: 3, label: "Node 3", title: "node 3 tootip text" },
          { id: 4, label: "Node 4", title: "node 4 tootip text" },
          { id: 5, label: "Node 5", title: "node 5 tootip text",last:true }
        ] };
    
    let updatedNodes = obj.nodes.map(( o ) => {
     let {first, last} = o;
     first ? o.color = 'red' : last ? o.color = 'green' : null;
     return {...o}
    });
    console.log(updatedNodes);

Добавьте только цвет:"красный" и цвет:"зеленый" на свои узлы.

нравится:

nodes: [
  { id: 'Node 1', label: "Node 1", title: "node 1 tootip text" ,first:true, color: "red"},
  { id: 2, label: "Node 2", title: "node 2 tootip text" },
  { id: 3, label: "Node 3", title: "node 3 tootip text" },
  { id: 4, label: "Node 4", title: "node 4 tootip text" },
  { id: 5, label: "Node 5", title: "node 5 tootip text",last:true, color: "green" }
],
Другие вопросы по тегам