2016-07-05 5 views
0

私の質問はかなり自明です。
私は、テキストボックスの構築があります。
角度1.5のテキストボックスコンポーネントを正しく構築するにはどうすればよいですか?

<qn-textbox placeholder="" 
      label="{{$ctrl.resources.lbl_PersonalId}}"></qn-textbox> 

を、コンポーネントが次のようになります。

(function() { 
    'use strict'; 

    var qnTextbox = { 
     bindings: { 
      placeholder: '@', 
      label: '@' 
     }, 
     template: ` 
      <div clas="row"> 
       <div class ="col-xs-12 col-sm-4 col-md-3"> 
        <span data-ng-bind="$ctrl.label"></span> 
       </div> 
       <div class ="col-xs-12 col-sm-8 col-md-9"> 
        <input type="text" placeholder="{{$ctrl.placeholder}}" /> 
       </div> 
      </div> 
     `, 
     controller: function() { 
      var ctrl = this; 
     } 
    }; 

    angular 
     .module('app.components.core.qnTextbox') 
     .component('qnTextbox', qnTextbox); 

})(); 

私はバブルまでの正しい方法/テキストの変更親に通知を探しています。
私はいくつかの種類のテキストコンテナを使用する必要がありますし、各テキストボックスコンポーネントがそれを親として持っているので、require(次に$ onChangeはコンテナを更新します)を使用できますか?
- それはオーバーヘッドですか? (私はそう思わないが、私は間違っているかもしれない)
私は一般的でクリーンなものを探しています。

答えて

0

ng-modelを使用してデータを保存し、ng-changeを使用してフォームデータの変更を検出する必要があります。


テンプレート:あなたのコントローラーの変化を検出

<input ng-model="$ctrl.model" ng-change="$ctrl.onModelChange()"></input>


$ctrl.onModelChange = function() { 
    console.log($ctrl.model); 
} 
関連する問題