Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwickler-Tools
Übersicht
Versionierung
Änderungsprotokoll
Aktualisieren Sie Ihre API-Version
Ihre SDK-Version aktualisieren
Entwickler-Tools
SDKs
API
Tests
Workbench
Ereignisziele
Arbeitsabläufe
Stripe-CLI
Stripe Shell
Entwickler-Dashboard
Agent-Toolkit
Mit LLMs entwickelnStripe für Visual Studio CodeStripe-StatuswarnungenHochgeladene Dateien
Sicherheit und Datenschutz
Sicherheit
Datenschutz
Extend Stripe
Stripe-Apps
    Übersicht
    Jetzt starten
    Eine App erstellen
    Funktionsweise von Stripe-Apps
    Beispiel-Apps
    App erstellen
    Shop-Geheimnisse
    API-Authentifizierungsmethoden
    Autorisierungsabläufe
    Serverseitige Logik
    Ereignisse überwachen
    Umgang mit verschiedenen Modi
    Sandbox-Unterstützung aktivieren
    App-Einstellungsseite
    Erstellen Sie eine Nutzeroberfläche
    Onboarding
    Ihre App verbreiten
    Vertriebsmöglichkeiten
    App hochladen
    Versionen und Releases
    Ihre App testen
    Ihre App veröffentlichen
    Ihre App bewerben
    Deep-Links hinzufügen
    Installationslinks erstellen
    Rollen in Erweiterungen der Nutzeroberfläche zuweisen
    Aktionen nach der Installation
    App-Analytik
    Eingebettete Komponenten für Apps
    Stripe-Apps von Drittanbietern einbetten
    Umstellung auf Stripe Apps
    Migrieren oder Erweiterung erstellen
    Ein Plugin zu Stripe Apps oder Stripe Connect migrieren
    Verwendungszweck
    App-Manifest
    CLI
    Erweiterungs-SDK
    Berechtigungen
    Darstellungsfelder
    Entwurfsmuster
    Komponenten
      Accordion
      Badge
      Banner
      Balkendiagramm
      Textfeld
      Schaltfläche
      ButtonGroup
      Kontrollkästchen
      Chip
      ContextView
      DateField
      Trennzeichen
      FocusView
      FormFieldGroup
      Symbol
      Img
      Inline
      Liniendiagramm
      Link
      Liste
      Menü
      PropertyList
      Radio
      Auswählen
      SettingsView
      SignInView
      Sparkline
      Sanduhr
      Wechseln
      Tisch
      Registerkarten
      Aufgabenliste
      TextArea
      TextField
      Toast
      QuickInfo
Stripe Connectors
Partner
Partner-Ecosystem
Partner-Zertifizierung
StartseiteEntwickler-ToolsStripe AppsComponents

SettingsView-Komponente für Stripe-Apps

Ermöglichen Sie Nutzerinnen und Nutzern, Details zur Art und Weise, wie die App mit ihrem Konto funktioniert, zu ändern.

Seite kopieren

Sie können eine spezielle Einstellungsansicht festlegen, damit Nutzer/innen bestimmte Details in Bezug auf die Art und Weise, wie die App mit ihrem Konto funktioniert, ändern können. Beispielsweise könnte eine App, die eine Drittanbieter-API wie Zendesk verwendet, SettingsView verwenden, um eine/n Nutzer/in bei seinem/ihrem Zendesk-Konto zu autorisieren. Um mehr zu erfahren, lesen Sie, wie Sie Ihrer App eine Einstellungsseite hinzufügen.

Darstellung von SettingsView

SettingsView ist, genau wie ContextView, eine Ansichts-Root-Komponente, die alle anderen Nutzeroberflächen-Elemente enthält. Es ist die einzige Ansicht, die an kein bestimmtes Objekt, wohl aber an das Darstellungsfeld settings gebunden ist. Das Darstellungsfeld settings wird dabei festgelegten Stellen im Dashboard außerhalb der App-Schublade zugeordnet.

SettingsView wird auf der Seite mit den App-Einstellungen im Dashboard gerendert, nachdem Sie eine App hochgeladen haben. Wenn Sie Ihre App in der Vorschau lokal anzeigen, können Sie eine Vorschau der SettingsView im Dashboard unter https://dashboard.stripe.com/apps/settings-preview anzeigen.

Um SettingsView zu nutzen, müssen Sie eine Ansicht mit dem Darstellungsfeld settings zu Ihrem App-Manifest hinzufügen. Eine Anwendung mit einer Einstellungsansicht hätte ein App-Manifest mit einem Feld ui_extension, das ungefähr so aussieht:

{ ..., "ui_extension": { "views": [ ..., { "viewport": "settings", "component": "AppSettings" } ], } }

SettingsView-Eigenschaften

EigenschaftTyp

children

Pflichtfeld

React.ReactNode

Der Inhalt der Komponente.

onSave

Optional

((values: { [x: string]: string; }) => void) | undefined

Falls angegeben, wird eine Button vom Typ „Speichern“ mit der SettingsView angezeigt. Dieser Rückruf wird aufgerufen, wenn auf die Button geklickt wird.

statusMessage

Optional

string | undefined

Eine Zeichenfolge, die einen Status wie „Gespeichert“ oder „Fehler“ in der Kopfzeile der Ansicht anzeigt.

Beispiel

In diesem Beispiel wird gezeigt, wie Einstellungen aus einer externen API abgerufen, angezeigt und Änderungen gespeichert werden.

import React from 'react'; import {ExtensionContextValue} from '@stripe/ui-extension-sdk/context'; import {Box, SettingsView, TextField} from '@stripe/ui-extension-sdk/ui'; type FormStatus = 'initial' | 'saving' | 'saved' | 'error'; const AppSettings = ({userContext}: ExtensionContextValue) => { const [storedValue, setStoredValue] = React.useState<string>(''); const [status, setStatus] = React.useState<FormStatus>('initial'); // use the current user id to retrieve the stored value from an external api const key = userContext.id; React.useEffect(() => { if (!key) { return; } const fetchSetting = async (key: string) => { try { const response = await fetch(`https://www.my-api.com/${key}`); const storedSettingValue = await response.text(); if (storedSettingValue) { setStoredValue(storedSettingValue); } } catch (error) { console.log('Error fetching setting: ', error); } }; fetchSetting(key); }, [key]); const saveSettings = React.useCallback(async (values) => { setStatus('saving'); try { const {greeting} = values; const result = await fetch('https://www.my-api.com/', { method: 'POST', body: JSON.stringify(values), }); await result.text(); setStatus('saved'); setStoredValue(greeting); } catch (error) { console.error(error); setStatus('error'); } }, []); const getStatusLabel = React.useCallback(() => { switch (status) { case 'saving': return 'Saving...'; case 'saved': return 'Saved!'; case 'error': return 'Error: There was an error saving your settings.'; case 'initial': default: return ''; } }, [status]); const statusLabel = getStatusLabel(); return ( <SettingsView onSave={saveSettings} statusMessage={statusLabel}> <Box css={{ padding: 'medium', backgroundColor: 'container', }} > <Box css={{ font: 'lead', }} > Please enter a greeting </Box> <Box css={{ marginBottom: 'medium', font: 'caption', }} > Saved value: {storedValue || 'None'} </Box> <TextField name="greeting" type="text" label="Greeting:" size="medium" /> </Box> </SettingsView> ); };

Siehe auch

  • Entwurfsmuster als Orientierung
  • App gestalten
  • Test der Nutzeroberfläche
War diese Seite hilfreich?
JaNein
Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
Nehmen Sie an unserem Programm für frühzeitigen Zugriff teil.
Schauen Sie sich unser Änderungsprotokoll an.
Fragen? Sales-Team kontaktieren.
LLM? Lesen Sie llms.txt.
Unterstützt von Markdoc