Sowohl TanStack DevTools als auch EventClient können konfiguriert werden.
Wichtig
Alle Konfigurationen sind optional, es sei denn, sie sind als (erforderlich) gekennzeichnet.
Die DevTools Komponente hat zwei Konfigurations-Props, die unabhängig von Frameworks gleich sind.
Das config Objekt konzentriert sich hauptsächlich auf die Benutzerinteraktion mit dem Devtools-Panel und akzeptiert die folgenden Eigenschaften:
{ defaultOpen: boolean }
{ defaultOpen: boolean }
{ hideUntilHover: boolean }
{ hideUntilHover: boolean }
{ position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'middle-left' | 'middle-right' }
{ position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'middle-left' | 'middle-right' }
{ panelLocation: 'top' | 'bottom' }
{ panelLocation: 'top' | 'bottom' }
type ModifierKey = 'Alt' | 'Control' | 'Meta' | 'Shift';
type KeyboardKey = ModifierKey | (string & {});
{ openHotkey: Array<KeyboardKey> }
type ModifierKey = 'Alt' | 'Control' | 'Meta' | 'Shift';
type KeyboardKey = ModifierKey | (string & {});
{ openHotkey: Array<KeyboardKey> }
{ requireUrlFlag: boolean }
{ requireUrlFlag: boolean }
{ urlFlag: string }
{ urlFlag: string }
Die eventBusConfig ist die Konfiguration für das Rückgrat der Devtools, den ``, und akzeptiert die folgenden Eigenschaften:
{ debug: boolean }
{ debug: boolean }
{ connectToServerBus: boolean }
{ connectToServerBus: boolean }
{ port: number }
{ port: number }
Hier ist ein Beispiel in React:
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import { FormDevtools } from '@tanstack/react-form'
import { TanStackDevtools } from '@tanstack/react-devtools'
import App from './App'
createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
<TanStackDevtools
config={{ hideUntilHover: true, }}
eventBusConfig={{ debug: true }}
plugins={[
{
name: 'TanStack Form',
render: <FormDevtools />,
},
]}
/>
</StrictMode>,
)
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import { FormDevtools } from '@tanstack/react-form'
import { TanStackDevtools } from '@tanstack/react-devtools'
import App from './App'
createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
<TanStackDevtools
config={{ hideUntilHover: true, }}
eventBusConfig={{ debug: true }}
plugins={[
{
name: 'TanStack Form',
render: <FormDevtools />,
},
]}
/>
</StrictMode>,
)
Die Konfiguration für den EventClient sieht wie folgt aus:
{pluginId: string}
{pluginId: string}
{debug: boolean}
{debug: boolean}
Zusammengenommen sieht die Konfiguration des EventClient so aus:
import { EventClient } from '@tanstack/devtools-event-client'
type EventMap = {
'custom-devtools:custom-state': { state: string }
}
class customEventClient extends EventClient<EventMap> {
constructor() {
super({
debug: true,
pluginId: 'custom-devtools',
})
}
}
import { EventClient } from '@tanstack/devtools-event-client'
type EventMap = {
'custom-devtools:custom-state': { state: string }
}
class customEventClient extends EventClient<EventMap> {
constructor() {
super({
debug: true,
pluginId: 'custom-devtools',
})
}
}
Weitere Informationen zur EventClient-Konfiguration finden Sie in unserem Custom-Plugins Beispiel.
Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.