如何解决在react-three-fiber中使用useFrame与外部数据一起使用的最佳方法
我有一个名为Sticky
的组件,该组件包装了我的react-three-fiber
组件。该组件通过回调为我提供了一些状态更新,因此整个代码如下:
const Box = props => {
useFrame(() => {
// I need the Sticky state update here!
});
return (
<mesh {...props}>
<boxBufferGeometry attach="geometry" args={[1,1,1]} />
<meshStandardMaterial
attach="material"
color={"orange"}
/>
</mesh>
);
};
const Main = () => {
const onChange = state => {
console.log('NEW STATE',state);
};
return (
<Sticky onChange={onChange}
<Canvas>
<Box position={[-1.2,0]} />
</Canvas>
</Sticky>
);
};
如您所见,我需要Sticky
onChange
挂钩中来自react-three-fiber
useFrame
回调的数据。我了解一切工作原理,并且我不想将其传递到组件中,因为这将重新渲染Three.js草图。但是,如果我不能依靠道具,那么如何使用react-three-fiber
组件中的外部数据?
任何帮助表示赞赏。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。