抽象 クラス: Task
定義: plugins/utils/src/scheduler.ts:50
定期実行されるバックグラウンドジョブ。
// tasks/CleanupTask.ts — 置くだけで動く
import { Task } from "@cc-discord-framework/utils";
@Task.define({ every: "1h", runOnStart: true })
export class CleanupTask extends Task {
override async run() {
this.logger.info("クリーンアップを実行します");
}
}
拡張
コンストラクター
コンストラクター
new Task(): Task;
戻り値
Task
継承元
プロパティ
container
readonly container: Container;
定義: src/component/Component.ts:30
フレームワーク共有サービスを持つコンテナ。
継承元
every
readonly every: number;
定義: plugins/utils/src/scheduler.ts:52
解決済みの実行間隔(ミリ秒)。
location
readonly location: string | null;
定義: src/component/Component.ts:39
自動探索されたファイルの絶対パス。明示登録の場合は null。
継承元
logger
readonly logger: Logger;
定義: src/component/Component.ts:36
このコンポーネント用の子ロガー({ store, component } が付与済み)。
継承元
name
readonly name: string;
定義: src/component/Component.ts:27
ストア内で一意なコンポーネント名。
継承元
overlap
readonly overlap: boolean;
定義: plugins/utils/src/scheduler.ts:55
前回の run() の実行中に次の周期を重ねるか。
runOnStart
readonly runOnStart: boolean;
定義: plugins/utils/src/scheduler.ts:53
store
readonly store: ComponentStore<Component>;
定義: src/component/Component.ts:33
このコンポーネントが属するストア。
継承元
アクセッサー
client
署名を取得する
get client(): Client;
定義: src/component/Component.ts:42
フレームワーククライアント。
戻り値
継承元
services
署名を取得する
get services(): Services;
定義: src/component/Component.ts:50
ロード済みサービスへのアクセス(services/ から自動収束)。
import せずに this.services.<名前> で参照できます。
戻り値
継承元
メソッド
onLoad()?
optional onLoad(): unknown;
定義: src/component/Component.ts:55
初期化後・ストア追加前に呼ばれます。
戻り値
unknown
継承元
onUnload()?
optional onUnload(): unknown;
定義: src/component/Component.ts:58
ストアから取り除かれるときに呼ばれます(クライアント終了時を含む)。
戻り値
unknown
継承元
run()
abstract run(): unknown;
定義: plugins/utils/src/scheduler.ts:62
戻り値
unknown
define()
static define(options): (_target, context) => void;
定義: plugins/utils/src/scheduler.ts:58
タスクのメタデータを宣言します。every は必須です。
パラメータ
options
戻り値
(_target, context) => void