我有一个django(django-rest-framework)服务的api,它将一个电影对象及其相关信息返回到Vue应用程序中。其中一个信息是电影的持续时间。更改HH:MM的时间格式:SS
对象:
{
"movie_id": 13,
"duration": "17:52:14",
...
...
},
组件模板:
<div id="movieDetailSynopsis">
...
...
<p>Duration: {{movie.duration}}</p>
</div>
的持续时间在这种格式
HH:MM:SS
eg: 02:22:08
但我希望它看起来就像是这样
2h 22m
反正在django或vuejs或javascript中实现这个吗?
更新:
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');
分量模板中:
使用过滤器globaly
main.js试图
<div id="movieDetailSynopsis">
...
...
<p>Duration: {{movie.duration | durationFormat}}</p>
</div>
但我得到一个错误:
[Vue warn]: Failed to resolve filter: durationFormat (found in anonymous component - use the "name" option for better debugging messages.)
我会建议使用moment.js任何日期/时间操纵或格式https://momentjs.com/ – anvk