gpt4 book ai didi

angularjs - 无法将范围传递给 Angular 形对话框

转载 作者:行者123 更新时间:2023-12-04 13:49:41 25 4
gpt4 key购买 nike

我正在使用Angular显示图像列表。

单击图像后,我想显示一个包含图像和更多信息的对话框。

因此,当打开模态时,我需要传递示波器,或者至少传递图像。

注意:我将ngDialog用于弹出窗口。

  application.controller('ImageController', function ImageController($scope, ImageService, ngDialog) {

$scope.model = {
images: [],
loading: false
}

var load = function () {
$scope.model.loading = true;
ImageService.GetList($scope.model.pages.instagram)
.success(function (data, status, headers, config) {
$scope.model.images = $scope.model.images.concat(data.Images)
})
.error(function (data, status, headers, config) { })
.finally(function () {
$scope.model.loading = false
});;
}

$scope.open = function (image) {
ngDialog.open({
template: '<p>my template {{image.Key}} </p>',
plain: true,
scope: $scope
});
};


load();

});

<div data-ng-app="Application" data-ng-controller="ImageController">
<div data-ng-repeat='image in model.images'>
<img src="{{image.Url}}" alt="" data-ng-click="open(image)"/>
</div>

显示图像并在单击...时打开对话框。

但是,以某种方式,我无法访问模板内的范围。

以下作品:
    $scope.open = function (image) {
ngDialog.open({
template: '<p>my template' + image.Key + '</p>',
plain: true
});
};

但这不起作用:
    $scope.open = function (image) {
ngDialog.open({
template: '<p>my template {{image.Key}} </p>',
plain: true,
scope: $scope
});
};

有谁知道为什么吗?

我还没弄清楚。

最佳答案

将打开方法更改为以下方法。

  $scope.open = function (image) {
var newScope = $scope.$new();
newScope.image = image;
ngDialog.open({
template: '<p>my template {{image.Key}} </p>',
plain: true,
scope: newScope
});
};

这应该工作...

关于angularjs - 无法将范围传递给 Angular 形对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27865584/

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