簡體   English   中英

MD對話框彈出框(角度材質)作為新視圖加載(Yeoman)

[英]Md-dialog popup box (angular-material) loads in as a new view (Yeoman)

所以我用Yeoman創建了一個項目(角度全棧,角度材料),當我單擊div時,應該顯示md-dialog框。 現在發生的是,我的頁面被加載了兩次,盡管您看到了疊加層,但沒有彈出窗口可見( http://gyazo.com/c5e05ca2045c3ed9c32bb38d7bf67fc9 )。 我猜想它把我的dialog1.tmpl.html看作是一個全新的視圖。 那么,如何解決此問題?

我的部分代碼用於觸發彈出窗口:

$scope.showPopUp = function(ev) {
            $mdDialog.show({
                controller: DialogController,
                templateUrl: 'dialog1.tmpl.html',
                parent: angular.element(document.body),
                targetEvent: ev,
            })

            function DialogController($scope, $mdDialog) {

                if (editId) {
                    $http.get('/api/task/' + editId).success(function(data) {

                            console.log("data variabele uit de dialogController", data);

                            $scope.task_name = data.name;
                            $scope.task_project_id = data.project_id;
                            globalTask_Project = data.project_id;
                            $scope.task_location = data.location_id;
                            globalTask_location = data.location_id;
                            $scope.task_estimate_time = data.estimate_time;
                            $scope.task_project_client_name = data.project_client_name;
                            $scope.task_url = data.url;
                            $scope.task_resource_link = data.resource_link;
                            $scope.task_notes = data.task_notes;

                            $scope.closeDialog = function() {
                                var mainApp = angular.element(document.body).controller();
                                $mdDialog.hide();
                                editId = null;
                                globalTask_location = null;
                                globalTask_Project = null;
                            }

                        })
                        .error(function(data, status, headers, config) {
                            console.log("Error in retrieving data from server");
                        });
                } else {
                    $scope.closeDialog = function() {
                        var mainApp = angular.element(document.body).controller();
                        $mdDialog.hide();
                    }
                }

            }
        }

解決此問題的方法是我必須正確設置templateUrl的路由,因此必須使用templateUrl而不是templateUrl:'dialog1.tmpl.html':'app / calendar / month / dialog1.tmpl.html'

暫無
暫無

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

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