svelte/legacy
このモジュールは、マイグレーション中に使用する様々な関数を提供します。いくつかの機能は新しい機能と完全に置き換えられないためです。すべてのインポートは非推奨としてマークされており、時間をかけてマイグレーションする必要があります。
import {
function asClassComponent<Props extends Record<string, any>, Exports extends Record<string, any>, Events extends Record<string, any>, Slots extends Record<string, any>>(component: SvelteComponent<Props, Events, Slots> | Component<Props>): ComponentType<SvelteComponent<Props, Events, Slots> & Exports>Takes the component function and returns a Svelte 4 compatible component constructor.
asClassComponent,
function createBubbler(): (type: string) => (event: Event) => booleanFunction to create a bubble function that mimic the behavior of on:click without handler available in svelte 4.
createBubbler,
function createClassComponent<Props extends Record<string, any>, Exports extends Record<string, any>, Events extends Record<string, any>, Slots extends Record<string, any>>(options: ComponentConstructorOptions<Props> & {
component: ComponentType<SvelteComponent<Props, Events, Slots>> | Component<Props>;
}): SvelteComponent<Props, Events, Slots> & Exports
Takes the same options as a Svelte 4 component and the component function and returns a Svelte 4 compatible component.
createClassComponent,
function handlers(...handlers: EventListener[]): EventListenerFunction to mimic the multiple listeners available in svelte 4
run,
function self(fn: (event: Event, ...args: Array<unknown>) => void): (event: Event, ...args: unknown[]) => voidSubstitute for the self event modifier
self,
function stopImmediatePropagation(fn: (event: Event, ...args: Array<unknown>) => void): (event: Event, ...args: unknown[]) => voidSubstitute for the stopImmediatePropagation event modifier
stopImmediatePropagation,
function stopPropagation(fn: (event: Event, ...args: Array<unknown>) => void): (event: Event, ...args: unknown[]) => voidSubstitute for the stopPropagation event modifier
stopPropagation,
function trusted(fn: (event: Event, ...args: Array<unknown>) => void): (event: Event, ...args: unknown[]) => voidSubstitute for the trusted event modifier
trusted
} from 'svelte/legacy';asClassComponent
これは、命令型コンポーネントコードを Svelte 5 に移行するための暫定的な解決策としてのみ使用してください。
コンポーネント関数を受け取り、Svelte 4 と互換性のあるコンポーネントコンストラクタを返します。
function asClassComponent<
Props extends Record<string, any>,
Exports extends Record<string, any>,
Events extends Record<string, any>,
Slots extends Record<string, any>
>(
component:
| SvelteComponent<Props, Events, Slots>
| Component<Props>
): ComponentType<
SvelteComponent<Props, Events, Slots> & Exports
>;createBubbler
これは、Svelte 5 で自動的に委任されたイベントを移行するための暫定的な解決策としてのみ使用してください。
Svelte 4 では使用できないハンドラなしで、on:click の動作を模倣する bubble 関数を作成する関数です。
function createBubbler(): (
type: string
) => (event: Event) => boolean;createClassComponent
これは、命令型コンポーネントコードを Svelte 5 に移行するための暫定的な解決策としてのみ使用してください。
Svelte 4 コンポーネントと同じオプションとコンポーネント関数を受け取り、Svelte 4 と互換性のあるコンポーネントを返します。
function createClassComponent<
Props extends Record<string, any>,
Exports extends Record<string, any>,
Events extends Record<string, any>,
Slots extends Record<string, any>
>(
options: ComponentConstructorOptions<Props> & {
component:
| ComponentType<SvelteComponent<Props, Events, Slots>>
| Component<Props>;
}
): SvelteComponent<Props, Events, Slots> & Exports;handlers
Svelte 4 で使用可能な複数のリスナーを模倣する関数
function handlers(
...handlers: EventListener[]
): EventListener;nonpassive
アクションとして実装された nonpassive イベント修飾子の代替
function nonpassive(
node: HTMLElement,
[event, handler]: [
event: string,
handler: () => EventListener
]
): void;once
once イベント修飾子の代替
function once(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;passive
アクションとして実装された passive イベント修飾子の代替
function passive(
node: HTMLElement,
[event, handler]: [
event: string,
handler: () => EventListener
]
): void;preventDefault
preventDefault イベント修飾子の代替
function preventDefault(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;run
これは、コンポーネントコードを Svelte 5 に移行するための暫定的な解決策としてのみ使用してください。
サーバーで一度だけすぐに指定された関数を実行し、クライアントでは $effect.pre のように動作します。
function run(fn: () => void | (() => void)): void;self
self イベント修飾子の代替
function self(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;stopImmediatePropagation
stopImmediatePropagation イベント修飾子の代替
function stopImmediatePropagation(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;stopPropagation
stopPropagation イベント修飾子の代替
function stopPropagation(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;trusted
trusted イベント修飾子の代替
function trusted(
fn: (event: Event, ...args: Array<unknown>) => void
): (event: Event, ...args: unknown[]) => void;LegacyComponentType
移行期間中にコンポーネントをクラスと関数として両方使用できるようにします。
type LegacyComponentType = {
new (o: ComponentConstructorOptions): SvelteComponent;
(
...args: Parameters<Component<Record<string, any>>>
): ReturnType<
Component<Record<string, any>, Record<string, any>>
>;
};