首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对数组中的vue组件使用moment().fromNow()

问对数组中的vue组件使用moment().fromNow()
EN

Stack Overflow用户
提问于 2020-04-22 04:54:02
回答 2查看 209关注 0票数 1

如何使用Momentjs格式化vue组件中的日期?当我手动输入日期时,moment().fromNow()函数可以很好地工作,但我想使用从我的API中获取的日期。

这就是它目前的样子,我把我需要帮助的部分放在*中。

Vue.js

代码语言:javascript
复制
 <div class="post d-flex flex-row" v-for="(post, i) in Post" :key="i">
    <h6 class="card-subtitle mb-2 text-muted">Posted **{{moment(datePosted).fromNow()}}** by {{post.user}}</h6>
 </div>

data() {
        return{
            Post: []
        }
    },
    async created() {
        try{
            const res = await axios.get(url)
            this.Post = res.data;
        } catch(err){
            console.log(err)
        }
    }
EN

回答 2

Stack Overflow用户

发布于 2020-04-22 05:06:17

变量datePosted似乎未定义。格式函数应该类似于{{ moment(post.datePosted).fromNow() }}。另外,不要使用大小写不同的变量:post和Post。

票数 1
EN

Stack Overflow用户

发布于 2020-04-22 05:19:00

在我看来,您可以在created中映射res.data,并将带有格式化数据的属性附加到对象。例如:

代码语言:javascript
复制
this.Post = res.data.map(post => ({
   ...post,
   datePost: moment(post.date).fromNow()
})

显然,我不知道post.date是否是正确的属性。您必须在那里键入正确的密码。还要确保导入了moment js模块。

然后在模板中,您可以使用:

代码语言:javascript
复制
{{ post.datePost }}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61353045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档