2017-08-29 10 views
-1

以下の警告が表示され、入力に表示される書式が表示されません。"{{start_time | date: 'HH:mm'}}"の書式設定の問題 - 警告と書式設定が機能しない

"{{start_time | date: 'HH:mm'}}"は、 を必要な形式に適合しません。フォーマットは "HH:mm"、 "HH:mm:ss"または "HH:mm:ss.SSS"で、HHは00-23、mmは00-59、ssは00-59、SSSは です。 000-999。

<input type="time" value="{{start_time | date:'HH:mm'}}"> 

電流出力 enter image description here

期待HH:MM

+0

start_timeとは何ですか? –

+1

おそらくstart_timeは有効な日付ではありません... –

+2

'start_date!== start_time' –

答えて

1

はあなたのように見えるstart_dateであなたの日付を持っており、フロントエンドにstart_timeを使用しようとしています。これは動作するはずです:

<input type="time" ng-value="start_date | date : 'HH:mm'"> 

例:Working Plunker


UPDATE:

.filter('parseDate', function() { 
    return function (date) { 
     if (angular.isDate(date)) return date; 
     return new Date(Date.parse(date.replace(/:\d{2}[.,]\d{3}Z$/, ''))); 
    }; 
}); 

var start_time = "2017-08-29T17:15:16.814Z"; 

$scope.start_date = $filter('parseDate')(start_time); 

例:Working Plunker

がモデルを更新するためにできるようにするには、フィルタを追加する必要があります
+0

サンプルコードがコンソールで警告を出しているのがわかりました。私と同じ事が起きています。つまり、ある場所ではフォーマットされた方法で表示されていますが、他のタブでは表示されません。 –

+0

これは単なる警告です(エラーではありません)。代わりにng-valueを使用することでそれを取り除くことができます(それを反映するために答えによって更新されます)。希望が助けてくれる! –

+0

双方向バインディングを提供していません –