双向绑定无法在引导模式下工作angularJs
问题描述:
为什么双向绑定不能与使用相同控制器的模式一起工作?双向绑定无法在引导模式下工作angularJs
我有一个模式使用ng-models在控制器中,但每当改变模式上的数据,它不会在控制器中更改。
控制器:createEventController 保持该物体
$scope.newEvent =
{
"name": "",
"location": "",
"latitude": "",
"longitude": ""
"taxoption":
{
"country": "",
........
检视:
注NG-模型= “newEvent.taxoption.country”
<div ng-controller="createEventController" class="modal fade" id="ticketTaxModal" tabindex="-1" role="dialog" aria-labelledby="TicketTaxForm">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Tax Options</h4>
</div>
<div class="modal-body" style="text-align: left;">
<div class="form-horizontal">
<div class="form-group">
<label for="country" class="col-sm-2 control-label">Country</label>
<div class="col-sm-10">
<select id="country" ng-model="newEvent.taxoption.country" class="form-control">
<option value="CAN">Canada</option>
<option value="USA">United States</option>
</select>
</div>
</div>
..............
模态指令:
directive("ticketTax", [function(){
return{
restrict: 'E',
templateUrl: 'app/partials/create/ticketTaxModal.html',
link: function(scope, elem, attrs){
}
}
}]);
如何将数据从模态传递到控制器?我不明白为什么双向绑定不起作用,因为同一个控制器被分配给模态。有事情的东西?
答
我修正了它在视图中删除ng控制器。我认为这是创建控制器的另一个实例,从而阻止双向绑定。
也许你正在寻找的是通过添加'require:'ngModel','并通过在保存控制器的链接函数(scope,elem,attrs,ctrl)中添加第四个参数来访问您的指令中的控制器。我认为你需要手动设置观察者来更新你的模型,如果你使用这种指令模态(我不喜欢)。 – Vaelyr