2016-08-25 3 views
-4
から

Htmlのパスデータモーダル

<div ng-controller="aecaModalController as aecaModalC" 
    ng-init='init({"data":"xxx"})'> 
</div> 

宣言とコントローラ自体

function aecaModalController($scope,data){ 
    //How to get it here? 
}  
app.controller('aecaModalController',aecaModalController); 

モーダルオープン定義

var modalInstance = $uibModal.open({ 
     animation: true, 
     templateUrl: 'template.html', 
     controller: 'aecaModalController as aecaModalC', 
     openedClass: "custom-modal", 
     size: 'lg', 
     backdrop: 'static' 
    }); 

どのように私はモーダルにいくつかのデータを渡すことができますし、ときにそれを受け取りますそれは開かれている? は、私がどのように私はこれを行うことができ、それを得ることはありません、この方法:/

解決が動作しない、私はプロバイダによってオブジェクトを転送する必要がありました。)

おかげ@Jhonyブレイズ

+0

あなたの問題を再現するフィドルを提供してください。あなたのコードは本当に乱雑です。 – laker001

+0

あなたは設定しようとしましたかあなたのデータを工場で入手し、モーダルコントローラに入る? –

+0

Jhony Blaze、あなたは正しいです!私からのそのような愚かな質問:Dありがとう!!!!!! –

答えて

0

をモーダル設定オブジェクトにresolveプロパティを追加します。 resolveプロパティ値は、必要な値を返す関数プロパティを持つオブジェクトである必要があります。

ので:

その後
var modalInstance = $uibModal.open({ 
    animation: true, 
    templateUrl: 'template.html', 
    controller: 'aecaModalController as aecaModalC', 
    openedClass: "custom-modal", 
    size: 'lg', 
    backdrop: 'static', 
    resolve: { 
     someVal: function() { return "someVal"; } 
    } 
}); 

、モーダルインスタンスコントローラにプロパティ名によって解決値を挿入:

function aecaModalController(someVal) { 
    this.injectedValue = someVal; 
} 

そこから、{のような何かをすることによって、ビューにinjectValue変数にアクセス{aecaModalC.injectedValue}}

+0

私はすでにそれを試していましたが、エラー:[$ injector:unpr]不明なプロバイダ:someValProvider < - someVal < - aecaModalController –

+0

あなたの投稿を編集して、更新されたコードを表示できますか? –