延迟盖茨比的路线变更

时间:2020-03-21 00:15:20

标签: gatsby page-transition

有没有办法延迟盖茨比的路线变更?在淡入新页面之前,我会用它淡出页面。我正在使用gatsby-browser api进行此操作。在新页面上褪色效果很好,但是在旧页面上褪色则不起作用。

1 个答案:

答案 0 :(得分:0)

完全不知道您尝试了什么以及如何实现淡入效果。我建议使用另一种方法,即我一直用于创建页面过渡(淡入,淡出和其他)的方法:使用gatsby-plugin-transition-link

它允许您创建自定义动画或使用一些默认或预定义的动画,可以查看其演示站点here,其中有一些过渡示例。

对于预定义的过渡(最简单的方法),您只需要导入de component并像这样使用它即可:

import AniLink from "gatsby-plugin-transition-link/AniLink"

<AniLink paintDrip to="page-2">
  Go to Page 2
</AniLink>

对于自定义过渡,您需要定义de entry并退出effect,例如:

<TransitionLink
  exit={{
    length: length,
    trigger: ({ exit, node }) =>
      this.someCustomDefinedAnimation({ exit, node, direction: "out" }),
  }}
  entry={{
    length: 0,
    trigger: ({ exit, node }) =>
      this.someCustomDefinedAnimation({ exit, node, direction: "in" }),
  }}
  {...props}
>
  {props.children}
</TransitionLink>

有关更多信息,请查看他们的docs

此外,有gatsby-page-transitions的许多插件,但它们通常具有最肮脏和更复杂的集成,并且反馈也较少(就全球下载而言)。