我正在尝试使用 ui.bootstrap ( http://angular-ui.github.io/bootstrap/#/modal )为应用程序上显示更多信息(包括评论等内容)的元素启用模式窗口. 该元素正在页面上作为指令加载,我认为我遇到了嵌套范围的问题,但是它看起来好像模态窗口正在触发,但没有出现任何内容(屏幕消失)。
我的指令如下所示:
.directive('artifactCause', function() {
return {
restrict: 'E',
replace: true,
scope: {
thing: '=thing'
},
templateUrl: 'views/directives/artifact-cause.html',
controller: function($scope, $element, $attrs, $modal) {
console.log('clicked');
$scope.open = function() {
var modalInstance = $modal.open({
backdrop: true,
keyboard: true,
controller: 'artifactModalCtrl',
templateUrl: 'views/directives/modal-artifact.html',
scope: $scope,
resolve: {
thing: function () {
return $scope.thing.cause_id;
}
}
});
};
}
};
});
artifactModealCtrl 控制器看起来像这样:
.controller('artifactModalCtrl', function($scope, $http, loggedStatus, thing) {
var token = loggedStatus.token();
$scope.close = function(result) {
dialog.close(result);
};
$http.get( REQUEST_URL + '/Artifact/ArtifactDetail?token=' + token + '&artifact_id=' + thing ).
success(function(data) {
console.log(data);
$scope.thing = data.response;
return data.response;
}).
error(function(data) {
console.log('Error');
console.log(data);
});
})
我知道我从我的 ajax 调用收到的数据是成功的,因为我可以将它记录到控制台。任何正确方向的见解或指示将不胜感激。