【问题标题】:Is there a way in Vue to convert military time into standard timeVue中有没有办法将军事时间转换为标准时间
【发布时间】:2020-07-26 09:22:33
【问题描述】:

我正在使用以下代码从 JSON API 获取军事时间。

mounted: function(){
    var currentDate = moment().format('YYYY-MM-DD');
    axios.get("https://mysiteurl.com/api/ordersseller=5e1f43c0c69e7&items.arrival="+currentDate)
     .then(response => (this.post = response.data.data));
},

data(){
    return{
      post: []
   }
}


// the time value that I receive through that API is 1500, 1600 and 1700 

这是显示上述时间的模板视图。

<div v-for="item in post.items" v-bind:key="item.arrival">
    {{item.arrivalTime}}
</div>

如何将 军事时间 值(例如 1500、1600 和 1700)转换为标准时间,以便将它们打印为 03:00 PM、04:00 PM 和Vue.js 中的下午 5:00?

【问题讨论】:

标签: javascript vue.js momentjs bootstrap-vue


【解决方案1】:

您可以进一步转换检索到的列表中的项目值

mounted: function(){
    var currentDate = moment().format('YYYY-MM-DD');
    axios.get("https://mysiteurl.com/api/ordersseller=5e1f43c0c69e7&items.arrival="+currentDate)
     .then(response => {
      this.post = response.data.data.map(pr => ({
      ...pr,
      arrivalTime: moment(pr.arrivalTime, "HHmm").format("hh:mm A")
      })
}
);
},

data(){
    return{
      post: []
   }
}

【讨论】:

    【解决方案2】:

    可能是这样的

    let time = militaryTime/100-12 + ":00";
    

    ?

    【讨论】:

    • 不仅没有填充1500 将导致3:00 而不是03:00,也没有AM/PM,而且300(凌晨3 点)也会结束作为-9:00。太棒了。
    • 这只是一个概念。当然,如果需要一些抛光...... :)
    猜你喜欢
    • 2017-08-29
    • 2017-09-04
    • 2022-01-23
    • 1970-01-01
    • 2014-12-26
    • 1970-01-01
    • 2014-03-12
    • 1970-01-01
    • 2022-01-26
    相关资源
    最近更新 更多