したがって、私はdatepickerで提供された毎日のリクエストを送信し、その日付のサーバーにヒットし、無効にする必要があるかどうかを返すuibDatepickerディレクティブ(https://angular-ui.github.io/bootstrap/#datepicker)ない。 問題は非同期呼び出しであり、dateDisabled関数は約束を処理しないということです。 提案がありますか?
<span uib-datepicker datepicker-options="datepickerOptions" ng-model="selectedDate"></span>
-
$scope.datepickerOptions: {
dateDisabled: function (dateAndMode) {
if (dateAndMode.mode !== "day") {
return false;
}
//async call
TimeService.getIsDateAvailable(dateAndMode.date).then(function (data) {
//returns true or false
return data.data;
});
}
私は、ソリューションの多くを試してみました。私はこの答えを見つけました:Disable dates using factory response UI Bootstrap Datepicker
私はこれを私のコードに適用できません。
:
あなたはこの質問に日付ピッカー見えるの日付を得ることの一部を見ることができます。ユーザーが別の月を選択するたびに、サーバーに42回の通話を本当にしたいですか? – georgeawg
datepickerからそれらの42日間を取得する方法はありますか?だから私はすぐにそれらを渡すことができ、応答を生成する? – tonymarkoc
'dateDisabled' APIは非同期で使用するようには設計されていませんでした。非同期で使用するように設計された[ngModelController $ asyncValidators API](https://docs.angularjs.org/api/ng/type/ngModel.NgModelController#$asyncValidators)の使用を検討してください。 – georgeawg