Webanwendung entwickeln
Für die Entwicklung einer Webanwendung müssen folgende Aufgaben ausgeführt werden:
- Visual Builder-Anwendungen erstellen
- Erstellen Sie eine neue Webanwendung.
- Nehmen Sie die externe Bibliothek auf.
- Erstellen Sie eine Benutzeroberfläche.
- Aktualisieren Sie das hochgeladene PDF-Dokument.
- Neues PDF-Dokument erstellen.
- Laden Sie die PDF-Datei herunter.
Visual Builder-Anwendung erstellen
Eine Visual Builder-Anwendung ist eine Sammlung von Ressourcen, mit denen Sie Webanwendungen und Apps entwickeln. Eine Visual Builder-Anwendung enthält Metadaten in JSON-Dateien, die Datenquellen und Geschäftsobjekte beschreiben. Es enthält auch HTML- und JavaScript-Dateien für die Web- und Mobilanwendungen.
- :Klicken Sie auf der Homepage von Visual Applications auf Neu.
- Geben Sie im Dialogfeld "Anwendung erstellen" den Anwendungsnamen ein. Das Feld Anwendungs-ID wird basierend auf dem von Ihnen angegebenen Anwendungsnamen automatisch aufgefüllt.
- Sie können die Anwendungs-ID bei Bedarf ändern, die ID muss jedoch in Ihrer Identitätsdomain eindeutig sein.
- Lassen Sie die Standardauswahl "Leere Anwendung" unverändert. Diese Vorlage erstellt keine Artefakte, Apps oder anderen Ressourcen.
- Klicken Sie auf Beenden.
Eine neue Visual Builder-Anwendung wird automatisch geöffnet, nachdem Sie sie erstellt haben, und der Begrüßungsbildschirm wird angezeigt. Die neue Anwendung enthält keine Artefakte. Der Assistent erstellt standardmäßig die Dateistruktur der Anwendung sowie einige Ressourcen und Dateien, die Sie benötigen.
Neue Webanwendung erstellen
Die Webanwendungen in Ihrer Visual Builder-Anwendung sind voneinander unabhängig. Sie können jedoch alle in der Anwendung definierten Datenquellen verwenden.
Externe Bibliotheken einschließen
Um ein PDF-Dokument zu generieren, zu ändern und herunterzuladen, wie unter "Bevor Sie beginnen" angegeben, müssen Sie zwei externe Librarys aufnehmen: PDF-lib
und downloadj
.
PDF-lib
verwaltet das PDF-Dokument.downloadj
, lädt das generierte PDF-Dokument herunter.
index.html
einzufügen:
<script src="https://unpkg.com/pdf-lib@1.4.0"></script>
<script src="https://unpkg.com/downloadjs@1.4.7"></script>
Erstellen einer Benutzeroberfläche
Jetzt erstellen Sie eine Benutzeroberfläche. Diese Schnittstelle sollte Komponenten wie Container, Header, Schaltflächen, Textfelder, JavaScript-Code und HTML-Code enthalten und Benutzern Folgendes ermöglichen:
- Laden Sie eine Datei hoch.
- Geben Sie einen Feldtext ein, der im PDF-Dokument angezeigt wird.
- Klicken Sie auf eine Schaltfläche, um das hochgeladene PDF-Dokument mit dem eingegebenen Text zu aktualisieren.
- Klicken Sie auf eine Schaltfläche, um ein neues PDF-Dokument zu erstellen, das den eingegebenen Text enthält.
- Klicken Sie auf eine Schaltfläche, um das vorbereitete Dokument herunterzuladen.
Datei per Drag-and-Drop verschieben und PDF-Dokument anzeigen
Zunächst müssen Sie wichtige Komponenten per Drag-and-Drop in die von Ihnen erstellte Benutzeroberfläche verschieben.
Hochgeladene PDF-Datei im Hauptseitenbildschirm anzeigen
Fügen Sie im Quell-HTML der Hauptseite ein Objekt mit der Quelle der zuvor zugewiesenen Seitenvariablen fileURL
hinzu. Fügen Sie das Objekt fileURL
zur HTML-Hauptseite hinzu. In dieser Phase kann die Anwendung eine PDF-Datei hochladen und anzeigen.
Weisen Sie die Ausgabe der Funktion addPDFDocument den Seitenvariablen fileURL und holdFile zu.
Assign the returned addPDFDocument
function properties URL and data to the page variables fileURL
and holdFile
, respectively.
Eingabevariable der Funktion addPDFDocument zuweisen
Weisen Sie in der GUI die hochgeladene Dateivariable dem Parameter arg1
der Funktion zu.
addPDFDocument-Funktion erstellen
addPDFDocument
auf Seitenebene. Die Anwendung erhält einen Eingabeparameter. Die Funktion instanziiert eine URL-Variable basierend auf dem Parameter der Eingabedatei und liest dann das hochgeladene Dokument und konvertiert es in eine base64-Zeichenfolge. Mit diesem Codebeispiel können Sie die Funktion definieren:
PageModule.prototype.addPDFDocument = function(arg1) {
return new Promise(
resolve=>{
const blobURL = URL.createObjectURL(arg1);
const reader = new FileReader();
reader.addEventListener("load", function () {
// convert image file to base64 string
resolve({ data: reader.result, url: blobURL });
}, false);
if (arg1) {
reader.readAsDataURL(arg1);
}
}
);
};
Hochgeladenes PDF-Dokument aktualisieren
Ziehen Sie eine Textfeldkomponente aus der Komponentenpalette per Drag-and-Drop in den Seitendesigner, darunter eine neue Schaltfläche.
- Erstellen Sie eine Seitenvariable
textIncludedIntoPDF
, um den Inhalt des Textfelds zu speichern. Diese Variable fügt den Inhalt ein und aktualisiert das PDF-Dokument damit. - Weisen Sie diese Variable der Komponente "Eingabetext" zu.
PDF aktualisieren und anzeigen
update_display_pdf
.
UpdatePDF-Funktion erstellen
Erstellen Sie als Nächstes die Funktion JavaScript createUpdatePDF
. Dies ist eine asynchrone Funktion mit zwei Eingabeparametern (dem hochgeladenen PDF-Dokument und dem Text, den der Benutzer zuvor auf der Hauptseite eingegeben hat). Es gibt ein Bytearray zurück.
Aktualisiertes PDF-Dokument anzeigen
Das Ergebnis der Funktion UpdatePDF
wird der temporären Seitenvariablen tmpPDFBytes
zugewiesen. Nach dieser Zuweisung erhält eine JavaScript-Funktion das Bytearray base64 und instanziiert eine neue Blob-Entity aus diesem Bytearray. Schließlich erstellt und gibt die Funktion eine URL zurück, die diesem PDF-Dokument entspricht.
PageModule.prototype.displayPDFDocument = function (arg1) {
const bytes = new Uint8Array( arg1 );
// create a new blobfrom the byte array with type of application: pdf
const blob = new Blob( [ bytes ], { type: "application/pdf" } );
// create the url of the generated blob entity
const newdocURL = URL.createObjectURL(blob);
// return the updated pdf's url
return newdocURL;
};
Die Ausgabe dieser Funktion wird der Seitenvariablen fileURL
zugewiesen, mit der das aktualisierte PDF-Dokument auf der Seite angezeigt wird.
An dieser Stelle kann die Anwendung ein PDF-Dokument hochladen, es mit dem Text ändern, den der Benutzer in das Textfeld des Bildschirms eingegeben hat, und dann das aktualisierte PDF-Dokument auf dem Bildschirm anzeigen.
Neues PDF-Dokument erstellen
Dokument erstellen und anzeigen
Erstellen Sie ein neues Ereignis, um die Aktion zu definieren, die mit der Schaltfläche Neue PDF erstellen gestartet wird. Das Ereignis erstellt eine neue Aktionskette mit dem Label create_display_pdf
.
Die neue Aktionskette verwendet die Funktion JavaScript, um eine neue PDF-Datei zu erstellen (die zuvor in das Textfeld eingegebenen Text enthält). Anschließend wird über eine temporäre Seitenvariable eine zweite Funktion JavaScript neu generiert und das neue PDF-Dokument angezeigt.
PDF-Funktion erstellen
Erstellen Sie als Nächstes die Funktion JavaScript createPDF
. Diese asynchrone Funktion verwendet Text, den der Benutzer zuvor als Eingabeparameter auf der Hauptseite eingegeben hat, und gibt ein Bytearray zurück.
Neu erstelltes PDF-Dokument anzeigen
createPDF
wird der temporären Seitenvariablen tmpPDFBytes
zugewiesen. Nach dieser Zuweisung erhält eine JavaScript-Funktion das Bytearray base64 und instanziiert eine neue Blob-Entity aus diesem Bytearray. .
Die Funktion erstellt dann eine URL, die diesem PDF-Dokument entspricht, und gibt sie zurück. Die gleiche Funktion, die für die Aktionskette update_display_pdf
implementiert wurde, wird wiederverwendet. Die Ausgabe dieser Funktion wird dann der Seitenvariablen fileURL
zugewiesen, mit der das neue PDF-Dokument auf der Seite angezeigt wird.
PDF-Datei herunterladen
Über die Komponentenpalette können Sie per Drag-and-Drop eine Schaltflächenkomponente in den Seitendesigner aufnehmen.
Dokument herunterladen
Erstellen Sie eine neue Ereignisaktion für die Schaltfläche PDF herunterladen. Das Ereignis erstellt eine neue Aktionskette mit der Bezeichnung downloadPDF
. Die neue Aktionskette verwendet eine JavaScript-Funktion zum Herunterladen einer PDF-Datei (mit dem Text, den der Benutzer in das Textfeld eingegeben hat).
PDF-Datei herunterladen
downloadPDFfile
verwendet das Bytearray des PDF-Dokuments, das entweder hochgeladen und geändert oder neu erstellt wurde, als einen Eingabeparameter und lädt das Dokument mit einem vordefinierten Namen herunter: PDF-lib_modification_example.PDF
und vom Typ application/PDF
.
download()
(aus der Bibliothek downloadj
, die anfänglich ausgeblendet und dann in Ihre Anwendung importiert wurde). Bei den Eingabeargumenten für download()
kann es sich um einen der folgenden Datentypen handeln:
- URL
- Zeichenfolge
- BLOB
- Eingegebenes Array
dataURL
, der die Daten der Datei als base64- oder URL-codierte Zeichenfolge darstellt, den Namen und Typ der neuen Datei, die im Downloadverzeichnis des Browsers gespeichert ist.
PageModule.prototype.downloadPDFFile = function (arg1) {
download(arg1, "pdf-lib_modification_example.pdf", "application/pdf");
};