TanStack DevTools 和 EventClient 都可以进行配置。
重要
所有配置项均为可选,除非标明(必填)
无论使用哪种框架,Devtools 组件都有两个相同的配置属性。
config 对象主要围绕用户与 devtools 面板的交互,并接受以下属性:
{ 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 }
eventBusConfig 是 devtools 底层 `EventBus` 的配置,并接受以下属性:
{ debug: boolean }
{ debug: boolean }
{ connectToServerBus: boolean }
{ connectToServerBus: boolean }
{ port: number }
{ port: number }
以下是一个 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>,
)
EventClient 的配置如下:
{pluginId: string}
{pluginId: string}
{debug: boolean}
{debug: boolean}
将 EventClient 配置放在一起是这样的:
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',
})
}
}
有关 EventClient 配置的更多信息,请参阅我们的 自定义插件示例。
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。