如何解决盖茨比 Gatsby-plugin-intl 和 framer Motion AnimatePresence 问题
我需要创建多语言网站,我需要使用 framer 动作来使用动画和页面转换。
我使用了最流行的 gatsby 插件来实现多语言功能gatsby-plugin-intl。 为了实现页面转换,我使用了 article 中提到的方法。我用过
export const wrapPageElement = ({ element }) => (
<AnimatePresence exitBeforeEnter>{element}</AnimatePresence>
)
在 gatsby-browser.js 中,然后将布局内容包装在:
<motion.main
initial={{
opacity: 0,x: -200,}}
animate={{
opacity: 1,x: 0,}}
exit={{
opacity: 0,x: 200,}}
transition={{
type: 'spring',mass: 0.35,stiffness: 75,duration: 0.3,}}
>
{children}
</motion.main>
不使用 gatsby-plugin-intl 一切正常:
但是当我开始使用 intl 包并且因为我将 Link 组件从
import { Link } from 'gatsby'
到
import { Link } from 'gatsby-plugin-intl'
成帧器运动的存在动画停止工作。组件卸载时没有任何动画。
我对此进行了一些搜索,并在 github 上找到了 pull request。由于那个时间包的代码被改变了,问题仍然存在。
return _react.default.createElement(_gatsby.Link,(0,_extends2.default).
({},rest,{
to: link,onClick: handleClick
}),children);
如何解决这个问题?
附言yarn add gatsby-plugin-intl
安装 0.3.3 版。 github repo 中的最新版本是 0.3.1。安装的代码与 repo 中的代码不同。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。