React 动画留下 div 内容
React animate leaving div content
我正在使用 React 和 React-Spring 来制作问卷应用程序的动画。
当用户回答一个问题时,我希望调查问卷为问题 leaving/enter 设置动画。
我正在为应用程序使用 React,并尝试使用 React-Spring 来制作过渡动画。问题是,当用户回答问题时,问题组件会在离开前用新内容更新。
为简化起见,问题组件如下所示:
export default function Question({question, onAnswer}) {
const [answer, setAnswer] = useState(null);
return (
<animated.div ...>
{question.title}
<select>...{quesiton.options}...</select>
<button onClick={() => onAnswer(question.id, answer)}>Next</button>
</animated.div>
);
}
我创建了一个代码沙箱来说明我的问题:
https://codesandbox.io/s/nostalgic-swartz-lhkj0?file=/src/AnimatedComponent.js
我该如何处理?在网络上找不到任何示例
谢谢!
您应该在过渡图中使用项目 属性,而不是直接在 animated.div 中使用文本。
{transitions.map(
({ item, key, props }) =>
item && (
<animated.div key={key} style={props}>
{item}
</animated.div>
)
)}
我正在使用 React 和 React-Spring 来制作问卷应用程序的动画。 当用户回答一个问题时,我希望调查问卷为问题 leaving/enter 设置动画。
我正在为应用程序使用 React,并尝试使用 React-Spring 来制作过渡动画。问题是,当用户回答问题时,问题组件会在离开前用新内容更新。
为简化起见,问题组件如下所示:
export default function Question({question, onAnswer}) {
const [answer, setAnswer] = useState(null);
return (
<animated.div ...>
{question.title}
<select>...{quesiton.options}...</select>
<button onClick={() => onAnswer(question.id, answer)}>Next</button>
</animated.div>
);
}
我创建了一个代码沙箱来说明我的问题: https://codesandbox.io/s/nostalgic-swartz-lhkj0?file=/src/AnimatedComponent.js
我该如何处理?在网络上找不到任何示例
谢谢!
您应该在过渡图中使用项目 属性,而不是直接在 animated.div 中使用文本。
{transitions.map(
({ item, key, props }) =>
item && (
<animated.div key={key} style={props}>
{item}
</animated.div>
)
)}