Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript angularjs中的嵌套控制器_Javascript_Angularjs_Angular Ui Bootstrap - Fatal编程技术网

Javascript angularjs中的嵌套控制器

Javascript angularjs中的嵌套控制器,javascript,angularjs,angular-ui-bootstrap,Javascript,Angularjs,Angular Ui Bootstrap,我们对这个很陌生。在最终设法使ui引导与日期控件一起工作后:- <div class="col-md-2 box" ng-controller="ResultFilter" > <h2>Filter</h2> <p class="input-group" ng-controller="DatepickerDemoCtrl"> <input type="text" class="form-control" date

我们对这个很陌生。在最终设法使ui引导与日期控件一起工作后:-

<div class="col-md-2 box" ng-controller="ResultFilter" >  
<h2>Filter</h2>

    <p class="input-group" ng-controller="DatepickerDemoCtrl">
        <input type="text" class="form-control" datepicker-popup="{{format}}" ng-model="resultfilter.startdate" is-open="opened1" min="minDate" max="'2015-06-22'" datepicker-options="dateOptions" date-disabled="disabled(date, mode)" ng-required="true" close-text="Close" />
        <span class="input-group-btn">
        <button class="btn btn-default" ng-click="open($event, 'opened1')"><i class="glyphicon glyphicon-calendar"></i></button>
        </span>
    </p>
   <p class="input-group" ng-controller="DatepickerDemoCtrl">
        <input type="text" class="form-control" datepicker-popup="{{format}}" ng-model="resultfilter.enddate" is-open="opened2" min="minDate" max="'2015-06-22'" datepicker-options="dateOptions" date-disabled="disabled(date, mode)" ng-required="true" close-text="Close" />
        <span class="input-group-btn">
        <button class="btn btn-default" ng-click="open($event, 'opened2')"><i class="glyphicon glyphicon-calendar"></i></button>
        </span>
    </p>
 <p class="input-group">
    <select class="form-control" ng-model="resultfilter.frequency">
  <option value="Daily">Daily</option>
<option value="Weekly">Weekly</option>
<option value="Monthly">Monthly</option>
<option value="Yearly">Yearly</option>
</select>
      </p>
</div>
然而,我们如何获得起始日期的值,因为它位于DatePickerDemoCtrl的控制器中? 以下方法不起作用

$scope.resultfilter.startdate

任何帮助都将不胜感激

ng controller
创建新范围。您的
DatepickerDemoCtrl
都是
ResultFilter
的子作用域。在您的情况下,您可以尝试:

$scope.$$childHead.resultfilter.startdate
IMO不建议使用此解决方案,因为它会创建紧密耦合的代码,您假设此控制器有一个子作用域,一些更推荐的方法:

  • 用于在作用域之间进行通信
  • 创建一个共享服务来保存状态(我认为不适用于您的情况)

    • ng控制器
      创建新范围。您的
      DatepickerDemoCtrl
      都是
      ResultFilter
      的子作用域。在您的情况下,您可以尝试:

      $scope.$$childHead.resultfilter.startdate
      
      IMO不建议使用此解决方案,因为它会创建紧密耦合的代码,您假设此控制器有一个子作用域,一些更推荐的方法:

      • 用于在作用域之间进行通信
      • 创建一个共享服务来保存状态(我认为不适用于您的情况)

      工作非常出色,我将看看您建议的其他方法,但在我的培训中,这些方法还没有达到book@Simon:您应该看看他们如何创建更好的代码。看看这个:它将帮助您更好地理解作用域和继承。works brilliant,我将看看你建议的其他方法,但是,在我的培训中,这些方法还没有达到book@Simon:你应该看看他们如何创建更好的代码。看看这个:它将帮助你更好地理解作用域和继承。作为Khanh to答案的补充,查看这个解释javascript和angular继承的优秀线程:作为Khanh to答案的补充,查看这个解释javascript和angular继承的优秀线程: