我对角度世界(第二天)非常陌生,并尝试解决角度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