0

マイ角度UIルータは、などの状態/ビューを変更していますか?渡すパラメータは

など。私のビューのための

<home-view my-data="dataObject"> 

または

<home-view my-data="myService.getMyData()"> 

コントローラは、実際のテンプレート&ディレクティブを使用して独自のファイルに位置しています。あなたが私の最後の同僚でリゾルバ

$stateProvider 
    .state({ 
     name: 'home', 
     controller : "MyController" 
     url: '/', 
     resolve: { 
      obj: function() { 
       return {foo:bar} 
      } 
     } 
     template: '<home-view></home-view>', 
}) 

// then in your controller 
angular.module('app').controller('MyController', function(obj) { 
    this.myObj = obj; 
}); 
+0

ビューの 'controller'を介して渡すのはなぜですか?それはそれのためのものです:) –

+0

私はそれをコントローラ関数と$ scope。$ parent.myDataで動作させることができました。しかし、実際には、指示とデータバインディングのようなテンプレートを介して渡すことはできないのですか? – Janne

答えて

1

を使用することができます

0

は、この問題を手伝ってくれました。ソリューションは解決を使用してデータを取得し、それをルータースコープ変数としてテンプレートに渡します。重要な学習は、ルーターに定義されたコントローラーには独自のスコープがあり、「ホームビュー」のスコープではないということでした。私の家のコントローラでは、ルータコントローラは$ scope.parent経由でアクセスできます。

.state({ 
    name: 'home', 
    url: '/', 
    resolve: { 
     cData: (MyService) => { 
      return MyService.getMyData() 
     } 
    }, 
    controller: function (cData) { 
     this.data = cData; 
    }, 
    controllerAs: 'ctrl', 
    template: '<home-view my-data="ctrl.data"></home-view>' 
}) 
関連する問題