私のangularJSアプリケーションでは、モーダルリンクをクリックすると、名前がポップアップに表示されるようにパラメータをモーダルポップアップに渡そうとしています。モーダルリンクは、外部サービスから名前のリストを取得するカスタムディレクティブから来ています。AngularJSでパラメータを渡すことができません
this tutorial to Create an Angularjs Popup Using Bootstrap UIとdocumentation for $uibModalと一緒に試してみましたが、このチュートリアルは少し古くなっています。
私はモーダルPopUpとコントローラを動作させることができますが、パラメータを渡すことはできません。
私はPlunkerに問題を再現しました。
この問題は、私はlistings
ディレクティブ(script.js in Plunkerを参照)からpopupController
に渡されたtitlename
のparamを取得することはできませんです。私は解決が正しく設定されているとは思わない。 Chromeでデバッガを設定すると、これまでのところでtitlename
の値が表示されます。
app.directive('listings', [function(){
return {
restrict: 'E',
...
controller: ['$scope','$uibModal', function listingsDirectiveController($scope,$uibModal) {
$scope.open = function (titlename) {
var uibModalInstance = $uibModal.open({
templateUrl: 'popup.html',
controller: 'popupController',
titlename: titlename,
resolve: {
item: function(){
return titlename;
}
}
});
}
}]
};
}]);
しかし、popupController
には渡されません。以下のコードではtitlename
は値なぜこれが起こっているundefined
app.controller('popupController', ['$scope','$uibModalInstance', function ($scope,$uibModalInstance, titlename) {
$scope.title1 = titlename;
$scope.close = function() {
$uibModalInstance.dismiss('cancel');
};
}]);
任意のアイデアとどのように私はそれを修正することができていますか?これはAngularJSでresolve
を使用する正しい方法ですか?まず
が、それはまさにだったこと、ありがとうございました。私はアイテムの値を前に渡してみましたが、他の方法がたくさんありましたが、 '' {{item.name}} ''で動作しませんでした。ありがとうございました – Holly
私はポップアップを'in page popup 'と同じ方法を使用し、pgCtrl内のロジックを使用しても動作しませんでした。どんな考え? – Holly
@Holyあなたはプランナーを持っていますか? – user2718281