2017-04-18 14 views
0

親関数をバインドするコンポーネントがあります。私は引数として非プリミティブな値を使わなければならないが、私はまだ定義されていないことを知っている。どうしたの ?ここに私の問題を示すサンプルコードがあります。角度コンポーネントの親関数未定義の引数

コンポーネント:

app.component('testComponent', { 
    template:'<button ng-click="$ctrl.hasStatus({val:700})">Test</button>', 
    bindings:{ 
    hasStatus:'&' 
    }, 
    controller:function() { 
    var ctrl = this; 
    } 
}) 

親:

<test-component has-status='hasStatus(statusObj)'></test-component> 

とコントローラで

$scope.hasStatus = function(obj) { 
    console.log(obj) // undefined 
} 

そして、あなたの持っているステータス属性functioとしてplunker

答えて

1

nはhasStatus(statusObj)です。statusObjはobjectのパラメータです。そのため、hasStatusメソッドにパラメータを渡しながら、JSONで述べたプロパティstatusObjのプロパティを渡す必要があります。

ng-click="$ctrl.hasStatus({statusObj: { val: 700}})" 

Demo Plunker

関連する問題