以下函数会弹出一个模态来询问用户一个问题:
function askuser(question,options,callback) {
$scope.question = question;
$scope.options = options;
$scope.callback = callback;
$scope.askusermodal = $ionicModal.fromTemplate(
'<ion-modal-view>\
<ion-content>{{question}}\
<div ng-repeat="answer in options"><button class="button" ng-click="askusermodal.hide();callback(answer)">{{answer}}</button></div>\
</ion-content>\
</ion-modal-view>', {
scope: $scope
});
$scope.askusermodal.show();
}
使用全局范围服务来存储应该是自包含函数的输入感觉确实是错误的,但是如果不这样做,我不确定如何(在离子的约束下)创建一个不同的范围来传递给askusermodal,以及如何从ng-click关闭模态。
简而言之,我如何重写此内容以停止使用全局$scope
?