Gatsby GraphQL 自定义日期格式字符串

Posted

技术标签:

【中文标题】Gatsby GraphQL 自定义日期格式字符串【英文标题】:Gatsby GraphQL custom date formatString 【发布时间】:2020-07-06 00:14:41 【问题描述】:

我有这个:

export const pageQuery = graphql`
  query 
    site 
      siteMetadata 
        title
      
    
    allMdx(sort:  fields: [frontmatter___date], order: DESC ) 
      edges 
        node 
          excerpt
          fields 
            slug
          
          frontmatter 
            date(formatString: "DD 'de'  MMMM, YYYY", locale: "pt")
            title
            description
          
        
      
    
  
`

在行->> date(formatString: "DD 'de' MMMM, YYYY", locale: "pt") 我必须插入字符串,但这个“de”不起作用。我知道我想显示如下日期: 25 de March, 2020. 但结果是: 25 '32' March, 2020. 我知道这不起作用,我知道为什么,但我无法让它正确。 我正在使用带有 graphql 的 Gatsbyjs

【问题讨论】:

【参考方案1】:

盖茨比依赖moment.js to format dates。

要对格式字符串中的字符进行转义,可以将自定义字符串括在方括号中。

date(formatString: "DD [de]  MMMM, YYYY", locale: "pt")

【讨论】:

非常非常非常非常非常感谢。保持安全兄弟【参考方案2】:

简单的把

date(formatString: "DD MMMM, YYYY")

Output Like this: 04 February, 2021

【讨论】:

在巴西,我们实际上使用的日期输出格式有点像这样:2021 年 2 月 2 日(例如......但无论哪种方式都非常感谢:D)

以上是关于Gatsby GraphQL 自定义日期格式字符串的主要内容,如果未能解决你的问题,请参考以下文章

在 Gatsby 和 Contentful 中按日期过滤

Gatsby:在自定义帖子类型上使用 GraphQL 查询和自定义分类

如何在 gatsby graphql 中查询日期范围?

ACF 自定义字段 WP GraphQL 突然开始在 Gatsby 中返回 null,即使它曾经可以工作

Gatsby graphql 跳过类型注释

javascript Gatsby / GraphQL - formatString日期字段