簡體   English   中英

將控制器用作VM時將數據傳遞到angular-ui模態

[英]passing data to angular-ui modal when using controller as vm

我需要將一個對象傳遞給模態控制器,我嘗試了不同的方法,這是我的最終代碼,該對象通過了,但是在控制台中出現了很大的錯誤

Error: [$injector:unpr] 

這是我的代碼

vm.openAttendeesModal = function (meeting) {

                var modalInstance = $modal.open({
                    templateUrl: '/App/Main/views/meetings/AttendeesModal.cshtml',
                    controller: 'attendeeController',

                    resolve: {
                        meetingSelected: function () { return meeting }
                    }
                });
            }

這是我的模態控制器

angular
      .module('App')
      .controller('attendeeController', attendeeController);

    attendeeController.$inject = ['meetingSelected', '$scope', '$modal', 'meetingService'];

    function attendeeController(meetingSelected,$scope, $modalInstance, meetingService) {
        /* jshint validthis:true */
        var vm = this;
        vm.meetingSelected = meetingSelected;

這是完整的錯誤

angular.js:12520 Error: [$injector:unpr] http://errors.angularjs.org/1.4.8/$injector/unpr?p0=meetingSelectedProvider%20%3C-%20meetingSelected%20%3C-%20attendeeController
    at Error (native)

有趣的是,即使我可以訪問傳遞的對象,也可以正常工作,但由於該嚴重錯誤,我只是覺得有些問題。

有什么建議嗎? 謝謝

嘗試這個

 var modalInstance = $modal.open({
                templateUrl: '/App/Main/views/meetings/AttendeesModal.cshtml',
                controller: 'attendeeController as ctrl',

                resolve: {
                    meetingSelected: function () { return meeting }
                }
            });

或添加controllerAs: "ctrl"

編輯:

如果您在AttendeesModal.cshtml中添加"attendeeController as ctrl" ,則將其刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM