useTransition on Array return undefined Array propeties (React Spring)
useTransition on Array return undefined Array propeties (React Spring)
我对 React Spring 很陌生,所以当我在对象数组上使用 UseTransition 时,它的值 return 是未定义的
const transitions = useTransition(people, (item) => item.id, {
enter: { transform: "translateX(0rem)", opacity: 1 },
leave: { transform: "translateX(-20rem)", opacity: 0 },
config: { duration: 500 },
});
return (
<>
<div className="ppl-lst">
{transitions.map(({ item, key, props }) => {
return (
<animated.div style={props} key={key}>
<div className="ppl lst-name">{item.name}</div>
<div className="ppl lst-email">{item.email}</div>
</animated.div>
);
})}
</div>
</>
);
指向地图函数时出错
TypeError: Cannot read property 'name' of undefined
奇怪的是,以前我用的是 react-spring 8.0.27,现在我用的是 react-spring 9.1.2。
如果我遗漏了什么,请告诉我
useTransition
的 API 在 v9 中有变化并记录在案。它应该看起来像这样:
const transitions = useTransition(people, {
enter: { transform: "translateX(0rem)", opacity: 1 },
leave: { transform: "translateX(-20rem)", opacity: 0 },
config: { duration: 500 },
});
return (
<>
<div className="ppl-lst">
{transitions((props, item) => {
return (
<animated.div style={props} key={key}>
<div className="ppl lst-name">{item.name}</div>
<div className="ppl lst-email">{item.email}</div>
</animated.div>
);
})}
</div>
</>
);
有关更多信息,请参阅此处的文档 – https://react-spring.io/hooks/use-transition
另外,作为旁注,您可以 shorthand 您的 transform 道具只是 x
像这样:
const transitions = useTransition(people, {
enter: { x: "0rem", opacity: 1 },
leave: { x: "-20rem", opacity: 0 },
config: { duration: 500 },
});
传递时不需要插值,因为 animated
组件知道如何处理这个 shorthand。请参阅这些文档 – https://react-spring.io/basics#shorthand-style-props
我对 React Spring 很陌生,所以当我在对象数组上使用 UseTransition 时,它的值 return 是未定义的
const transitions = useTransition(people, (item) => item.id, {
enter: { transform: "translateX(0rem)", opacity: 1 },
leave: { transform: "translateX(-20rem)", opacity: 0 },
config: { duration: 500 },
});
return (
<>
<div className="ppl-lst">
{transitions.map(({ item, key, props }) => {
return (
<animated.div style={props} key={key}>
<div className="ppl lst-name">{item.name}</div>
<div className="ppl lst-email">{item.email}</div>
</animated.div>
);
})}
</div>
</>
);
指向地图函数时出错
TypeError: Cannot read property 'name' of undefined
奇怪的是,以前我用的是 react-spring 8.0.27,现在我用的是 react-spring 9.1.2。 如果我遗漏了什么,请告诉我
useTransition
的 API 在 v9 中有变化并记录在案。它应该看起来像这样:
const transitions = useTransition(people, {
enter: { transform: "translateX(0rem)", opacity: 1 },
leave: { transform: "translateX(-20rem)", opacity: 0 },
config: { duration: 500 },
});
return (
<>
<div className="ppl-lst">
{transitions((props, item) => {
return (
<animated.div style={props} key={key}>
<div className="ppl lst-name">{item.name}</div>
<div className="ppl lst-email">{item.email}</div>
</animated.div>
);
})}
</div>
</>
);
有关更多信息,请参阅此处的文档 – https://react-spring.io/hooks/use-transition
另外,作为旁注,您可以 shorthand 您的 transform 道具只是 x
像这样:
const transitions = useTransition(people, {
enter: { x: "0rem", opacity: 1 },
leave: { x: "-20rem", opacity: 0 },
config: { duration: 500 },
});
传递时不需要插值,因为 animated
组件知道如何处理这个 shorthand。请参阅这些文档 – https://react-spring.io/basics#shorthand-style-props