2017-03-24 21 views
0

コントローラーにスコープを取得する際に問題が発生し、角度バージョンを1.5.3にダウングレードすると実際に修正されています。指令スコープがコントローラーを経由していません

角度1.6.3で何が問題になっているのか、これを別の方法で行う必要がある場合、誰かに助けてくれますか?

実際のコードはどれも

// Simple Directive 

var directive = { 
    restrict: 'EA', 
    templateURL: 'sometemplate.html', 
    scope: { 
     text: '@' 
    }, 
    bindToController: true, 
    controllerAs: 'someCtrl', 
    controller: 'someController' 
} 

// someController.js 

var self = this; 

self.text //this comes back as undefined which is the issue 

sometemplate.html 

{{someCtrl.text}} // this works 

が短いのでスコープは、テンプレートのために働いていないが、コントローラにavaialbleではありませんているように構文エラーを無視してください。私たちは..それが動作を開始するために1.5.3 1.6.3からバージョンをロールバックする場合

は同じのために

はまた、スコープと同じフィールドを持つオブジェクトにコントローラにバインドを変更しようとしたが、それはで作業をdoesnt 1.6.3。

私たちは何かが不足していますか?

答えて

0

コントローラにバインドしているからです。 bindToControllerがtrueに設定されていると、継承されているすべてのスコープ値は、controllerAsで提供される変数にバインドされます。指定されたsomeCtrlの名前に注入された$ scopeの値を探します。

+0

ねえ - 私はそれを試みました。スコープ内のsomeCtrlも空に戻ります。私はそれを行うための別の方法があるかどうかを調べようとしています。 1.5.3と1.6.3で動作するのはなぜですか? – fireholster

+0

は大慌てしてしまいます。 –

関連する問題