Skip to content

コントローラのイベントハンドラ記述で、'{this.xxx}'のような記述でコントローラの持つものにバインドできるようにする #347

@fukudayasuo

Description

@fukudayasuo

コントローラのイベントハンドラ記述で、'{this.xxx}'のような記述でコントローラの持つものにバインドできるようにする。

var controlelr = {
  __name: 'a',
  _myDataModel: null,
  __init: function(context){
    // コントローラ化時のパラメータで受け取ったデータモデルを取得
    _myDataModel = context.args.dataModel;
  }
  '{this._myDataModel} itemsChange': function(){
    // データモデルのitemsChangeイベントを拾うイベントハンドラを記述
  }
};

なお、

v1.1.11現在の動作だと、'{this.xxx} myevent'のようにthis.で始まるグローバルセレクタでイベントハンドラを指定した場合は、"this"というタグの"xxx"クラスと言うようにセレクタで解釈される。

また、'{this} myevent'のようにthisにバインドしようとすると、以下のエラーを投げている。

// code: 6012
// コントローラ"XXX"でセレクタ名にthisが指定されています。コントローラをバインドした要素自身を指定したい時はrootElementを指定してください。

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions