gpt4 book ai didi

javascript - Md-对话框弹出框( Angular Material )作为新 View 加载(Yeoman)

转载 作者:行者123 更新时间:2023-12-03 09:30:52 24 4
gpt4 key购买 nike

因此,我使用 Yeoman(Angular-fullstack、Angular-Material)创建了一个项目,当我单击 div 时,应该显示 md 对话框。现在发生的情况是,我的页面加载了两次,并且没有可见的弹出窗口,尽管您确实看到了覆盖层( http://gyazo.com/c5e05ca2045c3ed9c32bb38d7bf67fc9 )。我猜测它会将我的dialog1.tmpl.html视为一个全新的 View 。那么如何解决这个问题呢?

我的部分代码用于触发弹出窗口:

$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: 'app/calendar/month/dialog1.tmpl.html 而不是 templateUrl: 'dialog1.tmpl.html' '

关于javascript - Md-对话框弹出框( Angular Material )作为新 View 加载(Yeoman),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31512922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com