我有一个与Gatsby一起使用React Spring的项目。我收到以下错误:
TypeError: Failed to set an indexed property on 'CSSStyleDeclaration': Index property setter is not supported.
在我的一些研究中,我发现在其他情况下浏览器更新已导致这种类型的错误,但是我没有找到任何与React Spring相关的问题。
我尝试将所有相关依赖关系升级到最新版本。
我将其范围缩小到使用React Spring的代码的一部分:
const trail = useTrail(2, {
opacity: sideNav ? 1 : 0,
x: sideNav ? 0 : 180,
height: sideNav ? 180 : 0,
from: { opacity: 0, x: 20, height: 0 },
});
<NavItem style={trail}>
<Link to="/">Home</Link>
</NavItem>
如果我删除style = {trail},我将不再收到错误,因此我认为这与React Spring的useTrail有关。
我希望它能像几天前一样正常工作,在那里我没有收到任何错误,我的动画按预期工作。实际上,我已经有几周没有接触代码了,而几天前该站点已正确加载。现在突然坏了。
答案 0 :(得分:0)
useTrail
documentation说:
返回值是一个包含动画道具的数组。
因此,您不能直接将trail
应用于一项的style
。应该是这样的:
{trail.map(style => (
<NavItem
style={style}
>
<Link to="/">Home</Link>
</NavItem>
))}