在我的应用程序中,我有以下函数handleDeleteMessage
,它本质上与数据库和后端交互.
const handleDeleteMessage = async (messageId) => {
// removeMessage is a function that interacts with my backend database
await removeMessage(chatId, messageId, userData.userId)
return
})
目前,函数handleDeleteMessage
位于我的Chat组件内,该组件有一个也需要该函数的子组件.目前,我将handleDeleteMessage
作为prop
传递给我的子组件,但是我想知道是否有一种方法可以一次定义这个函数,然后在多个组件中使用它,包括子组件.这将消除将该函数作为props 添加到每个需要该函数的子级的需要.
还要注意,ChatID是该函数的一个参数,是Chat组件本地状态的一部分(Chat组件是父组件),因此这就是我不简单地导出和导入该函数的原因.
我找到了react context,然而这似乎只是为了共享全局react state
,而不是为了共享常规功能,比如handleDeleteMessage
,它不属于状态.有什么潜在的解决方案吗?谢谢.