Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
In der modernen Webentwicklung ist die Bereitstellung von zeitnahem Feedback an Benutzer entscheidend für ein nahtloses Benutzererlebnis. Toast-Benachrichtigungen sind eine effektive Möglichkeit, Nachrichten zu übermitteln, ohne den Arbeitsablauf des Benutzers zu unterbrechen. DieReact-toastifyPaket ist eine beliebte Wahl für die Implementierung von Toast-Benachrichtigungen in React-Anwendungen aufgrund seiner Einfachheit und Flexibilität. Wir werden uns auch damit befassenIronPDFNPM-Paket zum Erstellen, Bearbeiten und Verwalten von PDF-Dokumenten. Dieser Artikel wird Sie durch den Prozess der Integration führenReact-toastify undIronPDFin Ihr React-Projekt.
React-toastifyist ein NPM-Paket, das es ermöglicht, anpassbare Toast-Benachrichtigungen zu Ihren React-Anwendungen hinzuzufügen, mit minimalem Einrichtungsaufwand. Es bietet eine Vielzahl von Funktionen, darunter verschiedene Benachrichtigungstypen, automatische Schließfunktion, benutzerdefinierte Gestaltung, verbleibende Zeitmöglichkeit und mehr.
Für den Einstieg in diereact-toastify, müssen Sie das Paket über NPM oder Yarn installieren. Führen Sie den folgenden Befehl im Stammverzeichnis Ihres Projekts aus:
npm install react-toastify
oder
yarn add react-toastify
Nach der Installation des Pakets können Sie react-toastify in Ihrer React-Anwendung verwenden. Nachfolgend ein einfaches Codebeispiel, das zeigt, wie man react-toastify integrieren und verwenden kann.
Zuerst müssen Sie die erforderlichen Komponenten aus react-toastify importieren:
import React from 'react';
import { ToastContainer, toast } from 'react-toastify';
import 'react-toastify/dist/ReactToastify.css';
Fügen Sie als Nächstes die ToastContainer-Komponente zu Ihrer Anwendung hinzu.
function App() {
return (
<div> // react component rendered inside
<ToastContainer />
</div>
);
}
Sie können eine Toast-Benachrichtigung mit der Toast-Funktion auslösen. Hier ist ein Codebeispiel, wie eine Erfolgsmeldung angezeigt wird:
function notify() {
toast.success("Success! This is a success message.", {
position: toast.POSITION.TOP_RIGHT
});
}
function App() {
return (
<div>
<button onClick={notify}>Show Toast</button>
<ToastContainer /> // react component inside
</div>
);
}
React-toastify bietet verschiedene fortschrittliche Funktionen, mit denen Sie das Verhalten und das Erscheinungsbild Ihrer Toasts mithilfe von onOpen- und onClose-Hooks anpassen können.
import React from 'react';
import { ToastContainer, toast } from 'react-toastify';
import 'react-toastify/dist/ReactToastify.css';
function App() {
const notify = () => {
toast("Hello there", {
onOpen: () => window.alert('Called when I open'),
onClose: () => window.alert('Called when I close')
});
};
return (
<div>
<button onClick={notify}>Notify</button>
<ToastContainer />
</div>
);
}
export default App;
In diesem Beispiel:
Sie können Toasts in verschiedenen Positionen auf dem Bildschirm anzeigen, indem Sie die Positionsoption verwenden:
toast.info("Information message", {
position:"top-right"
});
Sie können die Dauer, für die ein Toast angezeigt wird, mit der autoClose-Option festlegen:
toast.warn("Warning message", {
autoClose: 5000 // Auto close after 5 seconds
});
Benutzerdefiniertes Styling kann auf Toasts angewendet werden, indem die className- und Stiloptionen verwendet werden:
toast.error("Error message", {
className: 'custom-toast',
style: { background: 'red', color: 'white' }
});
Toasts können programmgesteuert mit der Methode toast.dismiss geschlossen werden:
const toastId = toast("This toast can be dismissed");
function dismissToast() {
toast.dismiss(toastId);
}
Hier ist ein vollständiges Beispiel, das die Verwendung verschiedener Funktionen von react-toastify demonstriert:
import React from 'react';
import { ToastContainer, toast } from 'react-toastify';
import 'react-toastify/dist/ReactToastify.css';
function App() {
const notify = () => {
toast.success("Success! This is a success message.", {
position:"top-right" // success notification
});
toast.info("Information message", {
position:"bottom-left" // info will be displayed with progress bar
});
toast.warn("Warning message", {
autoClose: 5000 // close or pause toast messages
});
toast.error("Error message", {
className: 'custom-toast',
style: { background: 'red', color: 'white' }
});
};
return (
<div>
<button onClick={notify}>Show Toasts</button>
<ToastContainer />
</div>
);
}
export default App;
IronPDFist eine leistungsstarke C#-PDF-Bibliothek, die es Entwicklern ermöglicht, PDFs in ihren .NET-Projekten zu erstellen und zu bearbeiten. Egal, ob Sie PDFs aus HTML erstellen, bestehende PDFs bearbeiten oder Webseiten in das PDF-Format konvertieren müssen, IronPDF ist für Sie da.
Hier sind einige wichtige Funktionen und Anwendungsfälle:
IronPDF kann HTML-Seiten, sei es von einer URL, einer HTML-Datei oder einem HTML-String, in PDF umwandeln. Sie können auch lokale HTML-Dateien oder HTML-Strings in PDFs konvertieren.
IronPDF funktioniert nahtlos auf verschiedenen Plattformen, einschließlich:
IronPDF ermöglicht Ihnen:
Sie können Seitenvorlagen, Kopfzeilen, Fußzeilen, Seitenzahlen und benutzerdefinierte Ränder anwenden. IronPDF unterstützt UTF-8-Zeichenkodierung, Basis-URLs, Asset-Kodierung und mehr.
IronPDF hält sich an verschiedene PDF-Standards, einschließlich PDF-Versionen.(1.2 - 1.7), PDF/UA(PDF/UA-1), und PDF/A(PDF/A-3b).
Abhängigkeiten installieren: Erstellen Sie zunächst ein neues Next.js-Projekt(falls Sie es noch nicht getan haben)unter Verwendung des folgenden Befehls: Bitte beziehen Sie sich auf dieEinrichtung seite.
npx create-next-app@latest my-pdf-app --use-npm --example "https://github.com/vercel/next-learn/tree/main/basics/learn-starter"
Navigieren Sie dann zu Ihrem Projektverzeichnis:
cd my-pdf-app
Installieren Sie die erforderlichen Pakete:
npm install @ironsoftware/ironpdf
npm install react-toastify
Erstellen Sie ein PDF: Lassen Sie uns nun ein einfaches Beispiel für die Erstellung eines PDFs mitIronPDF. In Ihrer Next.js-Komponente(z.B. Seiten/index.tsx)fügen Sie den folgenden Code hinzu:
import Head from 'next/head';
import styles from '../styles/Home.module.css';
import {ToastContainer, toast} from 'react-toastify';
import 'react-toastify/dist/ReactToastify.css';
import {useState} from "react";
export default function Home() {
const [textInput, setTextInput] = useState('');
const notify = () => {
toast.success("Success! This is a success message.", {
position: "top-right"
});
toast.info("Information message", {
position: "bottom-left"
});
toast.warn("Warning message", {
autoClose: 5000
});
toast.error("Error message", {
className: 'custom-toast',
style: {background: 'red', color: 'white'}
});
};
const generatePdf = async () => {
try {
const response = await fetch('/api/pdf?url='+textInput);
const blob = await response.blob();
const url = window.URL.createObjectURL(new Blob([blob]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'example.pdf');
document.body.appendChild(link);
link.click();
link.parentNode.removeChild(link);
} catch (error) {
console.error('Error generating PDF:', error);
}
};
const handleChange = (event) => {
setTextInput(event.target.value);
}
return (
<div className={styles.container}>
<Head>
<title>Demo Toaster and Generate PDF From IronPDF</title>
<link rel="icon" href="/favicon.ico"/>
</Head>
<main>
<h1>Demo Toaster and Generate PDF From IronPDF</h1>
<button style={{margin:20, padding:5}} onClick={notify}>Show Toasts</button>
<p>
<span>Enter Url To Convert to PDF:</span>{" "}
</p>
<button style={{margin:20, padding:5}} onClick={generatePdf}>Generate PDF</button>
<ToastContainer/>
</main>
<style jsx>{`
main {
padding: 5rem 0;
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
footer {
width: 100%;
height: 100px;
border-top: 1px solid #eaeaea;
display: flex;
justify-content: center;
align-items: center;
}
footer img {
margin-left: 0.5rem;
}
footer a {
display: flex;
justify-content: center;
align-items: center;
text-decoration: none;
color: inherit;
}
code {
background: #fafafa;
border-radius: 5px;
padding: 0.75rem;
font-size: 1.1rem;
font-family: Menlo,
Monaco,
Lucida Console,
Liberation Mono,
DejaVu Sans Mono,
Bitstream Vera Sans Mono,
Courier New,
monospace;
}
`}</style>
<style jsx global>{`
html,
body {
padding: 0;
margin: 0;
font-family: -apple-system,
BlinkMacSystemFont,
Segoe UI,
Roboto,
Oxygen,
Ubuntu,
Cantarell,
Fira Sans,
Droid Sans,
Helvetica Neue,
sans-serif;
}
* {
box-sizing: border-box;
}
`}</style>
</div>
);
}
Da IronPDF nur auf Node.js läuft, fügen Sie als Nächstes eine API für die App hinzu, bei der PDFs mit Node.js erstellt werden.
Erstellen Sie eine Datei namens pdf.js im Ordner pages/api und fügen Sie den untenstehenden Code hinzu.
// pages/api/pdf.js
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
export default async function handler(req, res) {
try {
const url = req.query.url
const pdf = await PdfDocument.fromUrl(url);
const data = await pdf.saveAsBuffer();
console.error('data PDF:', data);
res.setHeader('Content-Type', 'application/pdf');
res.setHeader('Content-Disposition', 'attachment; filename=awesomeIron.pdf');
res.send(data);
} catch (error) {
console.error('Error generating PDF:', error);
res.status(500).end();
}
}
Hinweis: Fügen Sie im obigen Code Ihren eigenen Lizenzschlüssel hinzu.
Führen Sie Ihre App aus: Starten Sie Ihre Next.js-App:
npm run dev
or
yarn dev
Öffnen Sie Ihren Browser und navigieren Sie zu http://localhost:3000, um die untenstehende Website zu sehen.
Klicken Sie jetzt auf die Schaltfläche "Show Toasts", um Toast-Nachrichten anzuzeigen.
Geben Sie jetzt die Website-URL ein, um das PDF zu erstellen, und klicken Sie auf PDF erstellen. Eine Datei mit dem Namen awesomeIron.pdf wird wie unten heruntergeladen.
IronPDF seite.
Platzieren Sie den Lizenzschlüssel in der App wie unten gezeigt:
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
React-toastifyist eine leistungsstarke und benutzerfreundliche Bibliothek zum Hinzufügen von Toast-Benachrichtigungen zu Ihren React-Anwendungen. Mit seiner breiten Palette an Funktionen und Anpassungsoptionen können Sie das Benutzererlebnis verbessern, indem Sie in einer äußerst einfachen und unaufdringlichen Weise Echtzeit-Feedback bereitstellen. AndererseitsIronPDFist bei weitem die vielseitigste Unternehmensbibliothek mit Unterstützung für das Erstellen, Bearbeiten und Verwalten von PDF-Dokumenten. Indem Sie die in diesem Artikel beschriebenen Schritte befolgen, können Sie schnell integrierenReact-toastify undIronPDFin Ihr Projekt einfügen und seine Fähigkeiten nutzen.
Für weitere Informationen zum Einstieg in IronPDF wenden Sie sich bitte an ihre Dokumentation seite undCodebeispiele.
9 .NET API-Produkte für Ihre Bürodokumente