Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JAMstack博客的最佳实践?_Javascript_Web Architecture - Fatal编程技术网

Javascript JAMstack博客的最佳实践?

Javascript JAMstack博客的最佳实践?,javascript,web-architecture,Javascript,Web Architecture,我想写一个网站利用该架构,并包括一个博客页面(动态内容,在缓慢的时间间隔更新)。我有点困惑我应该如何以符合JAMstack的方式实现它 我研究了React静态模板,它们构建在JAMstack上,它们建议将博客文章存储在web服务上,并在构建时通过API访问它们。这对我来说是有意义的(因为JAMstack文档促进了api的使用),但这意味着我必须编写自己的web服务,它只在我自己的网站上使用,而且只在构建时使用,所以这看起来像是在浪费资源和时间 我的另一个想法是将博客文章存储在与我的网站相关的地方

我想写一个网站利用该架构,并包括一个博客页面(动态内容,在缓慢的时间间隔更新)。我有点困惑我应该如何以符合JAMstack的方式实现它

我研究了React静态模板,它们构建在JAMstack上,它们建议将博客文章存储在web服务上,并在构建时通过API访问它们。这对我来说是有意义的(因为JAMstack文档促进了api的使用),但这意味着我必须编写自己的web服务,它只在我自己的网站上使用,而且只在构建时使用,所以这看起来像是在浪费资源和时间

我的另一个想法是将博客文章存储在与我的网站相关的地方,然后直接导入。这样我就不会做任何不必要的事


你会推荐哪种方法?为什么?另外,如果我静态存储数据,是否应该将其包含在Git存储库中?我如何实现像RSS界面那样的扩展而不完全干扰我的项目呢?

另一个似乎非常合适的解决方案是无头CMS。(这是一个CMS,它只负责存储动态数据并为其提供API。它与前端完全解耦。)

一些最受欢迎的可以在上找到


(请参见问题的第一条和第二条评论。)

这取决于您想要什么样的网站:信息网站、电子商务、带有仪表板和用户登录的SPA或社交网站等

使用React构建一个SPA是很有趣的,它可以从动态api(如WordPress、contently等)获取内容,但如果你不想展示你的技能或浪费时间和金钱,那么对于一个信息/博客网站来说就太过了

对于一个信息/博客网站,如果你想要一个静态网站,你仍然必须使用JAMStack,因为你需要一些你没有的功能,比如表单帖子、搜索、评论等,而你从J和a.M那里得到的功能也会存在,因为你想高效地写内容,并使用一个WSG,比如Hugo,Jekyll等,并有一个结构、逻辑和构建过程的框架

如果您使用WSG,那么您可以在github、gitlabs、S3或您自己的服务器上部署生成的内容(不推荐)


然后,如果你不想学习服务器、操作系统、WSG、git、部署管道和其他有趣的东西的内部工作,只想看足球和喝啤酒,你可以使用appernetic.io(我是创始人)、netlify或类似的解决方案来构建和部署具有自定义域名和免费托管的网站

几个月过去了,当很多人都有了反应技能,想要一个静态站点生成器时,他们就开始转向GatsbyJS了

那些不知道/没有时间学习React+GraphQL的人(截至2019年初)仍然专注于Hugo、Jekyll、Middleman等长期存在的发电机

托管可以在任何地方,但直S3是一个很好的选择,或Netlify的轻松生活


这里有一篇合理的博文,提供了更多信息:

“似乎是在浪费资源和时间”是的,不是每种方法都适合每个项目。您——开发人员——必须决定一种方法是否对当前给定的项目有用。如果您只想创建一个博客页面,那么JAMstack可能没有多大意义。另一方面,Wordpress或TYPO3等现代CMS为您提供了API,因此您可以根据JAMstack构建网站,并使用Wordpress作为后端/API。感谢您的评论!通过谷歌搜索,我发现了headless CMS(),这似乎是解决这个问题的更好办法(因为默认情况下它们没有前端),是的,JAMstack对我来说可能有点过头了,但我只想尝试一下它