如何在 Gatsby.js 中将时间戳附加到 markdown 前面的内容

How to attach a time stamp to markdown front matter in Gatsby.js

我正在浏览 Gatsby 示例入门博客,这是降价博客之一 posts:

https://raw.githubusercontent.com/gatsbyjs/gatsby-starter-blog/master/src/pages/2015-05-01-hello-world/index.md

我认为作者不会在每次写 post 时都在前面写一个像 date: "2015-05-01T22:12:03.284Z" 这样的字符串。

这是 vim 功能吗?如何在保存文件时自动将时间戳添加到 Gatsby 的降价文件中?

感谢帮助:)

Gatsby 支持所有 official date & time formats!

所以你也可以只写“2015-05-1”。

文件系统源插件确实提供时间戳数据,如下所示:https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-source-filesystem/src/create-file-node.js#L52

它没有记录,因此将来可能会更改,但您可以在任何降价 GraphQL 查询中使用字段 modifiedTime、accessTime、birthTime 和 changeTime。

请注意,这些值是由 OS 提供的,因此它们可能非常不可靠。通常 OS 文件上的时间戳只是指示性的,不应被信任。一些 OSes 根本不使用它们,具体取决于文件系统的安装方式。

您可以做的是切换到另一个数据源,该数据源将提供可靠的创建和更新时间戳。 Wordpress 提供该数据。如果您使用正确的管理界面,MongoDB 可用于提供。 Contentfull 等其他来源也可能提供也可能不提供该信息。

顺便说一句,如果您绝对想要它,并且可以接受这些缺点,那么在您的 GraphQL 查询中添加这些字段是非常简单的。