Framer Motion的AnimateSharedLayout不会淡入淡出,以及如何反向缩放内部元素

问题描述

我在我的项目中使用React Router,并且在“概述”页面上有一个相册卡列表,在“相册”页面上有相同的相册卡列表。唯一的区别是相册页面稍宽。

我希望当有人更改路线时将卡转换到新的位置/大小,所以我将路由器封装在<AnimateSharedLayout type="crossfade">中,并给每张卡都相同的layoutId。>

现在,它可以工作,但是我有几个问题,想知道它们是否可以解决(我确定我只是忽略了一些明显的问题)。

我在此处整理了一个简化示例:https://codesandbox.io/s/framer-animatesharedlayout-5kdfr(如果您在“概述”和“相册”之间单击,则应该执行过渡)。

  • 为何淡入淡出功能无法正常工作?,相反,卡片会立即跳到末尾组件(我猜这是忽略了crossfade组件中的AnimateSharedLayout并使用了{ {1}},为什么呢?)
  • 是否可以通过某种方式使卡的内部组件反向缩放?(类似于https://www.framer.com/blog/posts/magic-motion/的Matt帖子中的“更正子组件”),例如,您可以看到即使在开始和结束时的大小相同,过渡期间的文本也将变压。

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)