NG-模型选择忽略,如果它是一个$ scope变量

问题描述 投票:0回答:1

我目前使用AngularJS引导日期选择器(也称为UIB-日期选择器)。目前我正在试图设置UTC上偏移,这可以通过设置ngModelOptions同样可以做到:ng-model-options="{timezone: '+02:00'}"工作正常。但是,如果我设置ngModelOptions以$范围变量,在时区变化将不会进行。因此,要明确,这个工程:

                    <input uib-datepicker-popup="{{picker.format}}"
                       ng-model="picker._value"
                       is-open="picker.opened"
                       datepicker-options="picker.options"
                       ng-model-options="{timezone: '+02:00'}"
                       close-text="{{'close' | translate}}"
                       clear-text="{{'clear' | translate}}"
                       current-text="{{'current' | translate}}"/>

但这并不:

                    <input uib-datepicker-popup="{{picker.format}}"
                       ng-model="picker._value"
                       is-open="picker.opened"
                       datepicker-options="picker.options"
                       ng-model-options="ngModelOptions"
                       close-text="{{'close' | translate}}"
                       clear-text="{{'clear' | translate}}"
                       current-text="{{'current' | translate}}"/>

尽管“$ scope.ngModelOptions”变量保存的值完全相同“{时区:‘+02:00’}”

我采用了棱角分明的UI自举2.5.6和1.6.9 angularjs

angularjs angular-ui-bootstrap
1个回答
0
投票

好吧,我很快找到了答案:ngModelOptions实际上有在日期选择器的“选项”对象设置,如下所示:

  const datePickerOptions = {
    opened: false,
    format: 'shortDate',
    options: {
      startingDay: $moment().startOf('week').isoWeekday(),
      minDate: null,
      maxDate: null,
      showWeeks: false,
      ngModelOptions: {
        timezone: '+02:00'
      }
    }
  };

在引导文档(https://angular-ui.github.io/bootstrap),它说,NG-模式选项是UIB-日期选择器里面输入支持的角度选择,但不知何故,它不具有可变范围的工作,所以才将其设置在日期选择器选项。

© www.soinside.com 2019 - 2024. All rights reserved.