0
以下のエラーメッセージが表示されます(同じオブジェクトを使用しています)。フィルタが動作しているにもかかわらず、角度フィルタが「補間できません」というエラーが発生しました
app.filter('dateFormat', function dateFormat($filter){
return function(text){
var tempdate= new Date(text.replace(/-/g,"/"));
return $filter('date')(tempdate, "dd-MM-yyyy");
}
});
Can't interpolate: {{ job.job_date | dateFormat}}
TypeError: text is undefinedO/<@http://localhost/ef-serial-numbers/public/assets/global/plugins/angularjs/angular.min.js:6:[email protected]://localhost/ef-serial-numbers/public/assets/global/plugins/angularjs
私はハードコードされた日付にjob.job_date
を変更すると、エラーが表示されなくなります。問題は、フィルタは実際にはエラーに関係なく正しく動作していることです。
'.replace'を呼び出す前に' text'が定義されていないかどうかを確認することはありますか? – MMhunter
@MMHunterのコメントは解決策として正しいと思います。この動作の理由は、 'job.job_date'が' undefined'を開始してからすぐに値を取得する(おそらく、ちょうど推測です)。最初のダイジェストは例外をスローし、2番目のダイジェストは正しい値を表示し、フィルタは明らかに「動作します」。 –
@Lock with pleasure xD。 – MMhunter