node-red editor-client - Modul Quellcode-Analyse

kostenlosKostenloses technisches Material

Dieser Inhalt ist direkt lesbar und eignet sich für das Grundlagenlernen und die Suche.

node-red editor-client - Modul Quellcode-Analyse

Vorwort

Vorheriger ArtikelWir haben das Editor-API - Modul in Node-RED beschrieben. Es wird hauptsächlich für die Bereitstellung von Front-End - Schnittstellen verwendet.
In diesem Artikel schauen wir uns das Editor-Client - Modul in Node-RED an.
Das Modul ist der Front-End - Code, der die Schnittstelle bestimmt, die wir sehen.
Wenn Sie die Schnittstelle von Node-RED ändern möchten, dann müssen Sie es genau untersuchen.
Schauen wir uns unten mal an.

editor-client

im Verzeichnis packages/node_modeles/editor-client.
ist hauptsächlich eine internationale Übersetzung der vier Kernverzeichnisse

  • locales Schnittstelle, wenn Sie einen Text ändern möchten, sollten Sie hier suchen.
  • public Die kompilierten Dateien, die in diesem Verzeichnis gespeichert werden. In der Regel wird nicht geändert.
  • Die Kerndatei des src-Stream - Editors enthält den gesamten Geschäftscode, Komponenten und Ressourcen des Editors.
  • Templates Programm Eingang, eine MST-Datei.
    node-red editor-client - Modul Quellcode-AnalyseAbbildung
    Das Verzeichnis der ersten Ebene unter editor-client ist so.

Unter dem Verzeichnis locales sind die Übersetzungen in verschiedenen Sprachen gespeichert.
zh-CN für vereinfachtes Chinesisch
zh-TW für traditionelle Chinesisch
en-US Englisch

Zuerst konzentrieren wir uns auf das src-Verzeichnis

src-Verzeichnis

von unten nach unten, die Verzeichnisse sind

  • ace Ressourcen für ace Code Editor
  • images Alle Bildressourcen
  • js Code Editor ist entscheidend
  • sass-Editor - Style-Datei
  • Tours Standard-Streams für die Präsentation oder Versionsmerkmale
  • Types ts Deklarationstypen
  • Anbieter Externe Abhängigkeitsbibliotheken wie ace, jquery, monaco, d3, font-awesome

Wenn Sie ein Bild auf einer Node-RED - Seite ändern möchten, können Sie es in den Images suchen und dann durch eine gleichnamige Bilddatei ersetzen.

Die aktuelle Version von Node-RED ist 3.x. Der Standardcode-Editor für diese Version ist monaco, aber als Übergang, der Code des Ace-Editor bleibt im Code, und Benutzer können die Konfiguration wechseln und weiterhin mit dem Ace-Editor.

Das sass-Verzeichnis speichert alle CSS-Stile auf der Seite, von denen die wichtigsten sind:variables.scssam wichtigsten ist.
Diese Datei definiert die CSS-Stilvariablen, die von node-red verwendet werden, und wenn Sie diese Variablen ändern, können Sie den Stil an vielen Stellen auf einmal ändern.
Wo jede Variable verwendet wird, muss man genau überlegen.

Unter src ist das Kernverzeichnis das js-Verzeichnis. Der Eingang dieses Verzeichnisses ist main.js.
Und alle Methoden und Variablen werden unter dem RED-Objekt definiert.
zum Beispiel Abonnements für einige Ereignisse, Verteilung von Events, Operations Stack History, Hook Hooks
Plugins, Einstellungen, Benutzer-UI und Logik, wenn Sie das Login-Popup hässlich finden, können Sie die Änderungen in user.js ändern.

Bei der sekundären Schnittstellenentwicklung von Node-RED war es unkomfortabel, dass der Großteil seiner Dom-Struktur mit jQuery zusammengefasst wurde.
In node-red finden Sie also keine großen HTML-Codes.
Zum Beispiel das Fenster der Anmeldeseite.

var dialog = $('<div id="node-dialog-login" class="hide" style="display: flex; align-items: flex-end;">'+
  '<div style="width: 250px; flex-grow: 0;"><img id="node-dialog-login-image" src=""/></div>'+
  '<div style="flex-grow: 1;">'+
      '<form id="node-dialog-login-fields" class="form-horizontal" style="margin-bottom: 0px; margin-left:20px;"></form>'+
  '</div>'+
  '</div>');
dialog.dialog({
    autoOpen: false,
    classes: {
        "ui-dialog": "red-ui-editor-dialog",
        "ui-dialog-titlebar-close": "hide",
        "ui-widget-overlay": "red-ui-editor-dialog"
    },
    modal: true,
    closeOnEscape: !!opts.cancelable,
    width: 600,
    resizable: false,
    draggable: false,
    close: function( event, ui ) {
        $("#node-dialog-login").dialog('destroy').remove();
        RED.keyboard.enable()
    }
});

Obwohl die Seite im UI-Teil nicht so einfach zu finden ist, hat node-red zum Glück eine gute Klassifikation für die UI gemacht.
Der Großteil der Benutzeroberfläche des Editors ist im Verzeichnis js / ui gespeichert. Wie Deploy Button, Ereignisprotokoll, Tasten, Benachrichtigungen, Einfügen...

Zusammenfassung

Wie viele Geräte werden "Hochspannung im Inneren, Nicht-Profis nicht entfernen" geklebt. Das gleiche gilt für die Modifikation von Node-RED, um den ganzen Körper zu bewegen.
Wenn Sie eine Anpassung benötigen, suchen Sie einen Profi.

Relevante Etiketten
Sollte man diese Informationen für ein echtes Projekt verwenden?

Gehen Sie zum Tool Center, um Nachrichten zu analysieren, CRC-Prüfungen und Geräte-Debugging zu erledigen, oder senden Sie Anforderungen für Auswahl - und Zugangsvorschläge.

Ingenieur Mitglied

Verwandeln Sie diesen Artikel in ein umsetzbares Debuggermaterial

Erweiterte Nachrichtenanalyse, Paket-Downloads, Codebeispiele, Engineering-Szenarien und Priority-Technischer Support sind für die Real-Projekt - Bereitstellung möglich.

Unbegrenzte Werkzeuge
Datenpaket und Codepaket
Vollständige Engineering Case-Basis
Vorrangiger Zugang zum technischen Support

Antwort veröffentlichen

Ihre E-Mail - Adresse wird nicht öffentlich gemacht. Erforderliche Elemente wurden verwendet * markiert.