Beispielschritte zur Verwendung von AntV X6 mit Vue.js

Beispielschritte zur Verwendung von AntV X6 mit Vue.js

0x0 Einführung

Da das Projekt Flussdiagramme verwendet und die Anforderungen nicht detailliert sind, wird der flexiblere Grafikeditor x6 als Flussdiagrammeditor ausgewählt. Aus der Dokumentation geht hervor, dass es nicht kompliziert ist, daher handelt es sich nur um ein Referenz-Tutorial.

Antv X6 Dokumentation

0x1 Installation

Installieren Sie die x6-Abhängigkeit gemäß den Anweisungen im Tutorial und erstellen Sie dann einen neuen Container zur Instanziierung:

<div ref="containerRef" Klasse="Bereichszentrum-Container" />
const Daten = {
  // Knoten: [
    {
      id: 'node1', // String, optional, eindeutige Kennung des Knotens x: 40, // Zahl, erforderlich, x-Wert der Knotenposition y: 40, // Zahl, erforderlich, y-Wert der Knotenposition width: 80, // Zahl, optional, Breitenwert der Knotengröße height: 40, // Zahl, optional, Höhenwert der Knotengröße label: 'hello', // String, Knotenbezeichnung },
    {
      id: 'node2', // String, eindeutige Kennung des Knotens x: 160, // Zahl, erforderlich, x-Wert der Knotenposition y: 180, // Zahl, erforderlich, y-Wert der Knotenposition width: 80, // Zahl, optional, Breitenwert der Knotengröße height: 40, // Zahl, optional, Höhenwert der Knotengröße label: 'world', // String, Knotenbezeichnung },
  ],
  // Kanten: [
    {
      Quelle: 'node1', // String, erforderlich, Startknoten-ID
      Ziel: 'node2', // String, erforderlich, Zielknoten-ID
    },
  ],
}

Funktion initGraph() {
  const Graph = neuer Graph({
    Container: this.$refs.containerRef,
    Netz: {
      Größe: 10, // Rastergröße 10px
      sichtbar: true // Rendernetzhintergrund},
    Schnapplinie:
      aktiviert: true, // Ausrichtung scharf: true
    },
    Scroller:
      aktiviert: true,
      pageVisible: false,
      Seitenumbruch: false,
      schwenkbar: true
    }
  })
  //Zentrieren Sie die Leinwand graph.centerContent()

  graph.fromJSON(Daten)
}

Dies ist das einfachste Beispiel. Bitte beachten Sie die entsprechenden Erläuterungen in der Dokumentation zu den verschiedenen Parametern oben.

0x2 Knoten-Seitenleiste

Laut dem Stencil-Beispiel im Dokument lässt sich viel Code vereinfachen. Man kann das gekapselte Geschäft direkt verwenden. Dazu schreibt man einfach eine Container-Instanziierung wie oben:

<el-aside ref="stencilRef" Klasse="Bereich links" />
this.stencil = neue Schablone({
    Titel: 'Prozessknoten-Seitenleiste',
    Ziel: Graph,
    Suche: false,
    zusammenklappbar: wahr,
    stencilGraphWidth: this.$refs.stencilRef.$el.clientWidth,
    stencilGraphHeight: this.$refs.stencilRef.$el.clientHeight,
    Gruppen: [
        {
            Name: "Gruppe",
            Titel: 'Flussdiagrammknoten',
            zusammenklappbar: falsch
          }
        ],
    getDropNode: Knoten => {
        Lassen Sie cloneNode = node.clone()
        Schalter (Knoten.Form) {
            Fall 'Rechteck':
                cloneNode = neue Rechteckform()
                brechen
            Fall 'Kreis':
                cloneNode = neue Kreisform()
                brechen
            Fall 'Polygon':
                cloneNode = neue Polylinienform()
                brechen
        }
        cloneNode.updateInPorts(Grafik)
        KloneNode zurückgeben
    }
})
// Knoten laden this.stencil.load([new Rect(rectInfo), new Circle(circleInfo), new Polygon(polygonInfo)], 'group')

0x3 Integrationsbeispiel

Online: https://codesandbox.io/s/icy-meadow-rqihx

Oben sind die Einzelheiten der Beispielschritte zur Verwendung von Antv X6 mit Vue.js aufgeführt. Weitere Informationen zur Verwendung von Antv X6 mit Vue.js finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Verweisen Sie im Vue-Projekt auf Antv G2 und verwenden Sie das Kreisdiagramm als Beispiel
  • Beispielcode zur Verwendung von antv in Vue
  • Beispielcode zur Verwendung von G2-Diagrammen in Vue
  • Verwendung von AntV in vue2 mit g2plot als Beispiel

<<:  Upgrade der Docker-Version von MySQL 5.7 auf MySQL 8.0.13, Datenmigration

>>:  Informationen zur Installationsmethode für MySQL 8.0.13-ZIP-Pakete

Artikel empfehlen

Ein unverzichtbarer Karriereplan für Webdesigner

Originalartikel, bei Nachdruck bitte Autor und Qu...

Häufige Probleme und Lösungen beim Erstellen von MySQL MGR

Inhaltsverzeichnis 01 Häufige Fehler 1 02 Häufige...

Die Hauptidee zum dynamischen Festlegen von Routing-Berechtigungen in Vue

Ich habe zuvor einige dynamische Routing-Einstell...

Analyse des Linux-Hochleistungsnetzwerk-IO- und Reaktormodells

Inhaltsverzeichnis 1. Einführung in grundlegende ...

Mysql-Datenbankdesign - Analyse von drei Paradigmenbeispielen

Drei Paradigmen 1NF: Felder sind untrennbar; 2NF:...

Warum wirkt sich die Verwendung von Limits in MySQL auf die Leistung aus?

Lassen Sie mich zunächst die MySQL-Version erklär...

Implementierungscode für mehrzeilige Textkomponenten der Vue-Faltanzeige

Faltdisplay mit mehrzeiligem Textbaustein Falten ...

Docker nginx Beispielmethode zum Bereitstellen mehrerer Projekte

Voraussetzungen 1. Docker wurde auf dem lokalen C...

Das WeChat-Applet implementiert den Serveraufbau des Benutzeranmeldemoduls

Ich habe node.js zum Erstellen des Servers gewähl...