Ich habe eine API mit django (django-rest-framework) geliefert, die ein Filmobjekt und die zugehörigen Informationen in eine Vue App zurückgibt. Eine der Informationen ist die Filmdauer.Zeitformat von HH ändern: MM: SS
Objekt:
{
"movie_id": 13,
"duration": "17:52:14",
...
...
},
Komponente Vorlage:
<div id="movieDetailSynopsis">
...
...
<p>Duration: {{movie.duration}}</p>
</div>
Die Dauer ist in diesem Format
HH:MM:SS
eg: 02:22:08
Aber was will ich es wie auf diese Weise suchen
2h 22m
Gibt es trotzdem, um dies in Django oder Vuejs oder Javascript zu erreichen?
Update:
Versuchte Filter mit globaly
main.js:
new Vue({
router,
components: {App},
template: '<App/>',
store,
filters: {
durationFormat(value) {
const duration = moment.duration(value);
return duration.hours() + 'h ' + duration.minutes() + 's';
}
}
}).$mount('#app');
innerhalb der Komponentenvorlage:
<div id="movieDetailSynopsis">
...
...
<p>Duration: {{movie.duration | durationFormat}}</p>
</div>
Aber ich erhalte eine Fehlermeldung:
[Vue warn]: Failed to resolve filter: durationFormat (found in anonymous component - use the "name" option for better debugging messages.)
Ich würde empfehlen, moment.js für jedes Datum/Zeit-Manipulation oder Format zu verwenden https://momentjs.com/ – anvk