Wie man die Buttons und RSVP-Formulare in Vue 3 nutzt ​
Schritt 1: npm Installation ​
Installiere das Paket aus der npm-Registry.
npm install add-to-calendar-button
Schritt 2: Import ​
Importiere das Modul in der Komponente, in welcher du den Button verwenden möchtest.
import 'add-to-calendar-button';
Schritt 3: Optimiere die Vue-Konfiguration ​
Theoretisch war es das schon.
Vue funktioniert wunderbar mit Web Components.
Allerdings wirst du feststellen, dass die Anwendung in deiner Browser-Konsole eine Warnung wirft. Um diese aufzulösen musst du dem Compiler ein paar mehr Informationen mitgeben.
Dies geschieht tendenziell in der vite.config.js
. Je nach Umgebung kannst du es aber auch an anderen Stellen integrieren. PrĂĽfe hierzu die offizielle Vue Dokumentation: Hier klicken.
// vite.config.js oder vite.config.ts
compilerOptions: {
isCustomElement: (tag) => tag.includes('-')
}
FĂĽr den Fall, dass der Add to Calendar Button der einzige Web Component in deinem Projekt ist, kannst du hierbei auch etwas konkreter werden.
compilerOptions: {
isCustomElement: (tag) => tag === 'add-to-calendar-button'
}
Schritt 4: Loslegen ​
Beginne mit der Nutzung, indem du einen <add-to-calendar-button proKey="prokey-deines-events" />
Tag in deinen Quellcode einfĂĽgst.
Bring your own button ​
Alternativ kannst du den Button oder Form auch programmatisch über die atcb_action Funktion auslösen. Beachte, dass hierbei ein Modal erzwungen wird.
Wenn du mit dem npm-Package arbeitest, musst du atcb_action zunächst importieren:
import { atcb_action } from "add-to-calendar-button";
Du solltest zudem ein HTML-Element als zweiten Paramter angeben. Auch wenn dieser optional ist, optimiert er die UX deiner Nutzer; vor allem bei Navigation ĂĽber die Tastatur.
Im folgenden Beispiel nutzen wir dieses Element auch als Trigger bei Klick:
const button = document.getElementById('my-custom-button');
button.addEventListener('click', () => atcb_action({ proKey: "prokey-deines-events"}, button));