在我的應用程序後,我發現,用戶未登錄我想開一個模態對話框:
.when('/showtask/:id', {templateUrl: 'Home/Template/showtask', resolve: ShowTaskCtrl.resolve, access: { allowAnonymous: false },
resolve: {
userAuthenticated: ["$http", "$q", function ($http, $q) {
var deferred = $q.defer();
$http.get('/api/Authentication/UserAuthenticated').then(function (data) {
if (data.data != "null") {
deferred.resolve(data.data);
}
else {
var modalInstance = {
templateUrl: 'Home/Template/loginfailed',
controller: 'ModalInstanceCtrl',
modalpart: ['modalpart', function (modalpart) {
return modalInstance;
}]
};
$modal.open(modalInstance);
deferred.reject();
}
});
return deferred.promise;
}]
}
由於它是在路線的變化發生我必須注入一個實例內modalpart和檢索在控制器中。
var ModalInstanceCtrl = WorkerApp.controller('ModalInstanceCtrl', ["$scope", "modalpart", function ($scope, modalpart) {
但我不斷收到此錯誤:
Unknown provider: modalpartProvider <- modalpart
我怎樣才能解決這個問題?
P.S.我正在查看的原始代碼是這裏:http://angular-ui.github.io/bootstrap/(在模式下)
謝謝你的幫助,但我仍然得到錯誤:[$ injector:unpr]未知的提供者:$ modalInstanceProvider < - $ modalInstance ...有沒有其他的方法來實現我想要的? – Timsen
但我真的不明白它,如果我運行console.log($ modalInstance)它返回一個對象... – Timsen
我建議你創建一個最小的jsfiddle/plunker顯示錯誤。很確定它會得到修復。 – Beyers