AssetManager
in package
リクエストスコープのJS/CSSアセットレジストリ。
プラグイン・拡張アプリは Facade(Asset)経由でこのクラスの register系メソッドを呼び、main.php は render() でハンドル一覧を依存解決済みのHTML文字列として取得する。
登録タイミングは呼び出し側が選ぶ。常時読み込みたいだけならプラグインの ServiceProvider::init() から 呼んでよい。BID/CID/EID/VIEW 等のコンテキストに応じて出し分けたい場合は、既存の Hook(例: afterBuild($res)。main.php では render() より前に発火するため間に合う)から呼べば足りるため、 このクラス専用の新規 Hook は設けていない(既存の差し込み口を優先する方針。@docs/foundation/functional-design.md)。
Table of Contents
Properties
- $definitions : array<string, AssetDefinition>
Methods
- dequeue() : void
- has() : bool
- inlineScript() : void
- inlineStyle() : void
- raw() : void
- render() : string
- 指定した position のアセットを依存解決した上でHTML文字列として返す。 main.php から position ごとに1回ずつ呼ばれる想定(プラグイン向けAPIではない)。
- script() : void
- style() : void
- logNotice() : void
- register() : void
Properties
$definitions
private
array<string, AssetDefinition>
$definitions
= []
Methods
dequeue()
public
dequeue(string $handle) : void
Parameters
- $handle : string
has()
public
has(string $handle) : bool
Parameters
- $handle : string
Return values
boolinlineScript()
public
inlineScript(string $handle, string $code[, array{deps?: string[], position?: string, attrs?: array} $options = [] ]) : void
Parameters
- $handle : string
- $code : string
-
$options
: array{deps?: string[], position?: string, attrs?: array
} = []
inlineStyle()
public
inlineStyle(string $handle, string $code[, array{deps?: string[], position?: string, attrs?: array} $options = [] ]) : void
Parameters
- $handle : string
- $code : string
-
$options
: array{deps?: string[], position?: string, attrs?: array
} = []
raw()
public
raw(string $handle, string $html[, array{deps?: string[], position?: string} $options = [] ]) : void
Parameters
- $handle : string
- $html : string
- $options : array{deps?: string[], position?: string} = []
render()
指定した position のアセットを依存解決した上でHTML文字列として返す。 main.php から position ごとに1回ずつ呼ばれる想定(プラグイン向けAPIではない)。
public
render(string $position) : string
注意: deps は同一 position 内の解決のみを保証する。position をまたぐ deps 指定は DependencyResolver 側で「不明なハンドル」警告になる(構造的に順序が決まるため誤りではないが、 実務上ほぼ使われない想定であり、意図的に対応範囲外としている)。
Parameters
- $position : string
Return values
stringscript()
public
script(string $handle, string $src[, array{deps?: string[], position?: string, attrs?: array, version?: ?string} $options = [] ]) : void
Parameters
- $handle : string
- $src : string
-
$options
: array{deps?: string[], position?: string, attrs?: array
, version?: ?string} = []
style()
public
style(string $handle, string $src[, array{deps?: string[], position?: string, attrs?: array, version?: ?string} $options = [] ]) : void
Parameters
- $handle : string
- $src : string
-
$options
: array{deps?: string[], position?: string, attrs?: array
, version?: ?string} = []
logNotice()
protected
logNotice(string $message) : void
Parameters
- $message : string
register()
private
register(AssetDefinition $definition) : void
Parameters
- $definition : AssetDefinition