V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sugarkeek
V2EX  ›  Node.js

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

  •  
  •   sugarkeek · 2021-02-12 11:00:55 +08:00 · 1907 次点击
    这是一个创建于 1387 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚刚接触 gatsbyjs,发现后端发布新数据,gatsbyjs 需要重新构建一次才能更新。所以我有点疑惑,Gatsbyjs 通过 GraphQL 查询到的数据是只在构建的查询一次吗?后面更新的数据需要重新构建吗?

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

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

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

    如果交互量大,不就是更新一次构建一次。或者像 hexo 里评论一样,和应用本身分离开
    dartabe
        3
    dartabe  
       2021-02-12 15:33:40 +08:00
    可以用 Nextjs 吧
    sphawkcn
        4
    sphawkcn  
       2021-02-12 19:51:27 +08:00
    我也是搞不懂评价很高的 GatsbyJS 美妙在何处,除非网站不更新,一更新就要全站全部重新构建,这个有点。。。。貌似只能用于不需要经常更新的“死”站。
    leishi1313
        5
    leishi1313  
       2021-02-13 15:44:28 +08:00 via Android
    你就想想自己实现 gatsby-image 所有的功能需要费多少事。配上默认的 code splitting,lazy load 等等,可以说是建站的最佳实践集合。
    再加上其他的比如和各种 cms 的对接,强大的 mdx 等等,我是没见过比它更香的框架了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1742 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:36 · PVG 00:36 · LAX 08:36 · JFK 11:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.