Class: View

View

new View()

テンプレートを扱うクラス

h5.core.viewがこのクラスを実装しています。また、h5.core.view.createView()でこのクラスのインスタンスを生成できます。

また、コントローラは内部にController.viewインスタンスを持ち、コントローラ内であればthis.viewで参照することができます。

コントローラの持つViewについての詳細は、Controller.viewを参照してください。

Source:

Methods

(static) append(element, templateId, paramopt) → {jQuery}

要素の末尾に指定されたIDのテンプレートを挿入します。

templateIdがこのViewインスタンスで利用可能でなければエラーを投げますが、 コントローラが持つviewインスタンスから呼ばれた場合は親コントローラのviewを再帰的にたどります。詳細はget()をご覧ください。

Parameters:
Name Type Attributes Description
element Element | jQuery DOM要素(セレクタ文字列, DOM要素, jQueryオブジェクト)
templateId String テンプレートID
param Object <optional>
パラメータ
Returns:
テンプレートが適用されたDOM要素(jQueryオブジェクト)
Type
jQuery
Source:

(static) bind(element, context) → {Binding}

データバインドを開始します。

注意:
このメソッドではバインド対象にコメントビューを指定できません。
コメントビューを使用したデータバインドは、コントローラが持つViewインスタンス(Controller.view)から実行して下さい。

Parameters:
Name Type Description
element String | Element | Array.<Element> | jQuery コメントビュー疑似セレクタ、またはDOM要素(セレクタ文字列, DOM要素, DOM要素の配列, jQueryオブジェクト)。 DOM要素の配列を指定する場合、全ての要素ノードの親ノードが同じでなければいけません。
context Object データコンテキストオブジェクト
Returns:
Type
Binding
Since:
  • 1.1.0
Source:

(static) clear(templateIds)

引数に指定されたテンプレートIDをもつテンプレートをキャッシュから削除します。 引数を指定しない場合はキャッシュされている全てのテンプレートを削除します。
Parameters:
Name Type Description
templateIds String | Array.<String> テンプレートID
Source:

(static) get(templateId, paramopt) → {String}

パラメータで置換された、指定されたテンプレートIDのテンプレートを取得します。

取得するテンプレート内に置換要素([%= %])が存在する場合、パラメータを全て指定してください。

templateIdがこのViewインスタンスで利用可能でなければエラーを投げます。

※ ただし、コントローラが持つviewインスタンスから呼ばれた場合、templateIdが利用可能でない場合は再帰的に親コントローラをたどり、 親コントローラが持つViewインスタンスで利用可能かどうか確認します。 利用可能であれば、そのインスタンスのview.get()を実行します。

一番上の親のViewインスタンスまで辿ってもtemplateId利用可能でなければ場合はh5.core.view.get()を実行します。 h5.core.viewでtemplateIdが利用可能でなければエラーを投げます。

update(), append(), prepend()についても同様です。

Parameters:
Name Type Attributes Description
templateId String テンプレートID
param Object <optional>
パラメータ(オブジェクトリテラルで指定)
Returns:
テンプレート文字列
Type
String
Source:

(static) getAvailableTemplates() → {Array.<String>}

Viewインスタンスに登録されている、利用可能なテンプレートのIDの配列を返します。
Returns:
テンプレートIDの配列
Type
Array.<String>
Source:

(static) isAvailable(templateId) → {Boolean}

指定されたテンプレートIDのテンプレートが存在するか判定します。
Parameters:
Name Type Description
templateId String テンプレートID
Returns:
判定結果(存在する: true / 存在しない: false)
Type
Boolean
Source:

(static) isValid() → {Boolean}

テンプレート文字列が、コンパイルできるかどうかを返します。
Returns:
第一引数に渡されたテンプレート文字列がコンパイル可能かどうか。
Type
Boolean
Source:

(static) load(resourcePaths) → {Promise}

指定されたパスのテンプレートファイルを非同期で読み込みキャッシュします。
このメソッドでは、通信エラー発生時に自動リトライは行いません(ver.1.1.4現在。将来この動作は変更される可能性があります)。
Parameters:
Name Type Description
resourcePaths String | Array.<String> テンプレートファイル(.ejs)のパス (配列で複数指定可能)
Returns:
promiseオブジェクト
Type
Promise
Source:

(static) prepend(element, templateId, paramopt) → {jQuery}

要素の先頭に指定されたIDのテンプレートを挿入します。

templateIdがこのViewインスタンスで利用可能でなければエラーを投げますが、 コントローラが持つviewインスタンスから呼ばれた場合は親コントローラのviewを再帰的にたどります。詳細はget()をご覧ください。

Parameters:
Name Type Attributes Description
element String | Element | jQuery DOM要素(セレクタ文字列, DOM要素, jQueryオブジェクト)
templateId String テンプレートID
param Object <optional>
パラメータ
Returns:
テンプレートが適用されたDOM要素(jQueryオブジェクト)
Type
jQuery
Source:

(static) register(templateId, templateString)

Viewインスタンスに、指定されたIDとテンプレート文字列からテンプレートを1件登録します。

指定されたIDのテンプレートがすでに存在する場合は上書きします。 templateStringが不正な場合はエラーを投げます。

Parameters:
Name Type Description
templateId String テンプレートID
templateString String テンプレート文字列
Source:

(static) update(element, templateId, paramopt) → {jQuery}

要素を指定されたIDのテンプレートで書き換えます。

templateIdがこのViewインスタンスで利用可能でなければエラーを投げますが、 コントローラが持つviewインスタンスから呼ばれた場合は親コントローラのviewを再帰的にたどります。詳細はget()をご覧ください。

Parameters:
Name Type Attributes Description
element String | Element | jQuery DOM要素(セレクタ文字列, DOM要素, jQueryオブジェクト)
templateId String テンプレートID
param Object <optional>
パラメータ
Returns:
テンプレートが適用されたDOM要素(jQueryオブジェクト)
Type
jQuery
Source: