Gatsbyjs 通过 GraphQL 查询到的数据是只在构建的查询一次吗?

2021-02-12 11:00:55 +08:00
 sugarkeek
刚刚接触 gatsbyjs,发现后端发布新数据,gatsbyjs 需要重新构建一次才能更新。所以我有点疑惑,Gatsbyjs 通过 GraphQL 查询到的数据是只在构建的查询一次吗?后面更新的数据需要重新构建吗?

我讲讲我试图解决的方法:
1. 似乎就是构建的时候查询一次,但是提供了一个 refresh 的钩子,更新的时候去请求 refresh 钩子,就会重新渲染。似乎是这样?

2. 官方解释说这是 gatsby 最美妙的地方,动态查询和静态构建都可以在 react 中完美使用,但是我大概搜了搜动态查询和静态构建在 gatsby 中的实例,发现都是讲 GraphQL 做静态一次性构建,动态的在用 restful 请求数据,这我就很疑惑了,放在好好的 GraphQL 不去用,去用 restful,然后告诉我这是动态查询和静态构建的完美融合,我觉得这不合理,应该还是我打开的方式不对?

3. 偏个题,关于 gatsbyjs,官方在宣传它的时候似乎是说他的亮点在于,通插件(似乎还有个主题) gatsby 对接,gatsby 具有很好的拓展性,我使用了大概两天,除了感觉自动创建路由这一点方便外,其他好像不用框架也能实现?
1903 次点击
所在节点    Node.js
5 条回复
dcalsky
2021-02-12 14:26:24 +08:00
SSG 是这样的,好比带了 GraphQL 功能的 React 版本的 hexo 。
sugarkeek
2021-02-12 15:08:20 +08:00
@dcalsky 还是太 morden 了,感觉适合文档或者博客类的应用。

如果交互量大,不就是更新一次构建一次。或者像 hexo 里评论一样,和应用本身分离开
dartabe
2021-02-12 15:33:40 +08:00
可以用 Nextjs 吧
sphawkcn
2021-02-12 19:51:27 +08:00
我也是搞不懂评价很高的 GatsbyJS 美妙在何处,除非网站不更新,一更新就要全站全部重新构建,这个有点。。。。貌似只能用于不需要经常更新的“死”站。
leishi1313
2021-02-13 15:44:28 +08:00
你就想想自己实现 gatsby-image 所有的功能需要费多少事。配上默认的 code splitting,lazy load 等等,可以说是建站的最佳实践集合。
再加上其他的比如和各种 cms 的对接,强大的 mdx 等等,我是没见过比它更香的框架了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/753022

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX