メインコンテンツまでスキップ
バージョン: v2.0

クラス: Client<Ready>

定義: src/client.ts:98

フレームワーククライアント — コンテナ・コンポーネントストア・コマンド ランタイムを備えた discord.js の Client です。

決められたディレクトリ(services/ commands/ listeners/ preconditions/ ...)にクラスを置くだけで、フレームワークが自動で インポートして制御します。エントリポイントは最小で済みます:

const client = new Client({
intents: [GatewayIntentBits.Guilds],
});
await client.login(); // DISCORD_TOKEN 環境変数を自動使用

ライフサイクル: login() → プラグイン install → ストアのロード (明示登録 + ファイル自動探索)→ ディスパッチャ接続 → ゲートウェイ接続 → ready 後にスラッシュコマンド同期。

拡張

  • Client<Ready>

型パラメーター

Ready

Ready extends boolean = boolean

コンストラクター

コンストラクター

new Client<Ready>(options): Client<Ready>;

定義: src/client.ts:129

パラメータ

options

ClientOptions

戻り値

Client<Ready>

上書き

DiscordClient<Ready>.constructor

プロパティ

baseDirectory

readonly baseDirectory: string | null;

定義: src/client.ts:109

解決済みの自動探索ルート(null = 自動探索なし)。


container

readonly container: Container;

定義: src/client.ts:100

フレームワーク共有サービス。


logger

readonly logger: Logger;

定義: src/client.ts:103

ルートの pino ロガー。


stores

readonly stores: StoreRegistry;

定義: src/client.ts:106

すべてのコンポーネントストア。

メソッド

destroy()

destroy(): Promise<void>;

定義: src/client.ts:198

全コンポーネントをアンロード(onUnload 実行)してから接続を破棄します。

戻り値

Promise<void>

上書き

DiscordClient.destroy

load()

load(): Promise<void>;

定義: src/client.ts:186

Discord に接続せずにフレームワークを起動します: プラグインの インストール、全コンポーネントのロード、ディスパッチャの接続。 冪等で、login() から自動的に呼ばれます。テストや起動スモーク チェックに便利です。

戻り値

Promise<void>


login()

login(token?): Promise<string>;

定義: src/client.ts:192

フレームワークをロードし、Discord ゲートウェイへ接続します。

パラメータ

token?

string

戻り値

Promise<string>

上書き

DiscordClient.login

register()

register(...classes): this;

定義: src/client.ts:169

コンポーネントクラスを明示登録します。担当ストアは各クラスの基底 (Command / Listener / Precondition / Service / プラグイン追加種別) から自動で推論されます。

load() 前の呼び出しはキューに積まれ、プラグインの install 後に 解決されるため、プラグイン種別のコンポーネントも呼び出し順を 気にせず登録できます。load() 開始後(= プラグインの install 中)の 呼び出しは、何番目のプラグインからでも 同じようにその場で ストアへ渡されます。

パラメータ

classes

...ComponentClass<Component>[]

戻り値

this