我對角度世界(第二天)非常陌生,並嘗試解決角度UI問題。我正在嘗試構建我的第一個模態對話框。 模態對話框正在正確顯示,但我不能在該模式對話框中使用模型。 這是我demo plunker無法訪問角度UI模式對話框的模型值
這裏是我迄今所做的:
在控制器:
appRoot.controller('DemoCtrl', function ($scope, $modal) {
$scope.openDemoModal= function (size) {
var modalInstance = $modal.open({
templateUrl: 'ngPartials/_DemoModal.html',
controller: 'modalCtrl',
size: size,
backdrop: true,
keyboard: true,
modalFade: true
});
};
});
index.html中:
<div ng-controller="DemoCtrl">
<a ng-click="openDemoModal()">Open Modal</a>
</div>
在_DemoModal.html
<div class="modal-header">
<h3 class="modal-title">Test Modal</h3>
</div>
<div class="modal-body">
<input ng-model="testModel"/>
</div>
<div class="modal-footer">
<button ng-click="test()">Test</button>
<button ng-click="cancel()">Cancel</button>
</div>
在控制器modalCtrl
appRoot.controller('modalCtrl', function ($scope, $modalInstance) {
$scope.test= function() {
var temp = $scope.testModel;//This shows undefined
};
$scope.cancel = function() {
$modalInstance.dismiss('cancel');
};
});
在modalCtrl $ scope.testModel始終保持未定義沒有母校是什麼在文本框中。 如果我首先設置$ scope.testModel =「some value」的值,那麼不管文本框中的內容如何,它都不會改變。 我在做什麼錯。
此外,我想知道,如果是有可能有DemoCtrl和modalCtrl之間的溝通? 對於這個通信我試圖用的事件概念如下:
在modalCtrl:
$scope.test= function() {
//var temp = $scope.testModel;//This shows undefined
$scope.$emit('someEvent', 'some args');
};
在DemoCtrl:
$scope.$on('someEvent', function (event, args) {
alert('event called');
});
但這也不能正常工作。 我究竟做錯了什麼。我是否以錯誤的方式創建角模態? 任何幫助對我來說都很棒。 在此先感謝。
,你可以收集你的代碼中的jsfiddle/plunk example – 2014-10-01 10:37:18
這裏是我創建的plunker:http://plnkr.co/edit/qSBtEG3yRPxZKmkxsyZ7?p=preview – 2014-10-01 11:13:21
http://angular-ui.github.io/bootstrap/ – 2014-10-01 11:32:06