0
私のサイトにはいくつかのモーダルを含むページコントローラがあります。いくつかのモーダルコントローラは堅牢になってきており、外部ページコントローラのスコープを失うことなく別のコントローラに移動したいと考えています(モーダルコントローラはページコントローラのいくつかの機能とプロパティを使用しています)。これまでは、外側のコントローラを参照するものにエラーが発生しています。ここで私はそれがセットアップされているかの簡単な例です:角モダルコントローラを別々のファイルに移動
ページコントローラ:
angular.module('myApp')
.controller('outerCtrl', function(MetaService) {
var thisCtrl = this;
thisCtrl.someFunction = function() {
//some cool functionality that will elvaluate something
}
function optionsModal() {
var PageCtrl = thisCtrl;
$uibModal.open({
'controller': 'scripts/controllers/optionsModal.js',
'controllerAs': 'ModalCtrl',
'templateUrl': 'views/modals/optionsModal.html',
'size': 'md'
});
}
});
モーダルコントローラ:ここ
angular.module('myApp')
.controller('optionsModalCtrl', function(MetaService) {
var modalCtrl = this;
function giveOptions() {
if (PageCtrl.someFunction()) {
//offer some option
} else {
//offer a different option
}
}
});
ありがとう、これは意味がありますが、私のために働いていないようです。私はリンクを読んで、いくつかの異なる方法で試しました。私は、私がしたいことではない(自分のコードで$ scopeを使用することをお勧めします)ので、私は '$ scope.pageCtrl = PageCtrlを試してみました。そのようなスコープを渡すことはできませんでした。ちょうど実験のために、私はいくつかのものにスコープをつけ、モーダルのプロパティとしてスコープを渡しましたが、まだモーダルのコントローラからエラーが出ました: – HolyMoly