アクターファイル
アクターは、プロジェクトの actors ディレクトリに TypeScript ファイルとして作成します。各アクターはbase44/actors/ 配下の専用サブディレクトリに配置され、entry.ts ファイルを持ちます。
base44
actors
chatRoom
entry.ts
base44.actors.chatRoom。entry.ts ファイルから、アクタークラスをデフォルトエクスポートとしてエクスポートします。
アクターディレクトリには、追加の .ts、.js、.json、.jsonc ファイルを含め、entry.ts からインポートできます。
entry.ts
このコードファイルにはアクタークラスが含まれます。base44:runtime/actors から Actor をインポートし、Actor を継承したクラスをデフォルトエクスポートとしてエクスポートします。Incoming と Outgoing のジェネリクスを渡して、アクターが受信、送信するメッセージに型を付けます。
次のクラスメソッドを実装します。handleStart() メソッドは省略可能です。
-
handleStart(): 保存されたセッションデータをストレージからクラスフィールドに読み込みます。Base44 はセッションがアクティブになるたびにこのハンドラーを呼び出します。そのため、Base44 が接続を処理する前に、復元した状態の準備が整います。ストレージの完全な例については、セッションデータを永続化する を参照してください。 -
handleConnect(): 接続してきたクライアントに現在のセッション状態を送信します。接続の拒否やクライアントの識別については、クライアント接続を管理する を参照してください。 -
handleMessage(): セッション状態を更新して永続化し、変更をブロードキャストします。 -
handleClose(): その接続に紐づく状態を削除します。クリアする接続状態がない場合は、空の本体を記述します。 -
handleTick(): tick の間隔ごとにコードを実行します。アクターが tick を使わない場合は、空の本体を記述します。tick の設定については、tick を実行する を参照してください。1 回限りの wake をスケジュールするには、wake をスケジュールする を参照してください。
ChatRoom アクターです。
関連項目
- アクター概要: 概念と用語
- アクターのファイルとコード: バックエンドクラス API の完全なリファレンス
- アクター: サンプルフロー: タイマー、接続、ストレージ、エンティティのその他のパターン
actors deploy: アクターを Base44 にデプロイします
このページは AI によって翻訳されました。最も正確で最新の情報については、英語版 を参照してください。