0

我正在使用 react-dnd,它们的大部分内部函数component都作为参数,因此我们可以确定该函数中的组件大小和内容。Component提供对组件本身的引用,因此我们可以执行getDOMNode(component).getWhatever().

然而,canDrop不幸的是,该函数没有接收到这个参数。我正在尝试使用组件参数来确定canDrop函数内部的位置。由于我不能使用文档推荐的组件参数:

组件:指定时,它是您的组件的实例。使用它来访问底层 DOM 节点以进行位置或大小测量,或者调用 setState 和其他组件方法。它故意从 canDrop 中丢失,因为实例在被调用时可能不可用。如果你想让这个方法依赖于组件的状态,可以考虑将状态提升到父组件,这样就可以只使用 props 了。通常,如果您尽可能依赖道具,您的代码会更干净。

我不确定如何将组件本身提升到其父级,以便我可以将它作为道具传递回自身。你能给我一个发生这种情况的例子吗?

4

1 回答 1

0

这并不意味着将状态提升到其父级,因为那将是反 React。它只是意味着在父级中获取您需要的信息并将其作为道具发送下来。

于 2017-01-12T22:57:52.937 回答