2017-07-07 20 views
0

私は、状態のオブジェクトのリストを維持するコンポーネントを持っています。私はこのコンポーネントをドラッグソースにしようと考えています。 Dragイベントが開始されると、コンポーネントの状態でオブジェクトのリストをドラッグしたいと思います。 問題は、Drag Source SpecオブジェクトのbeginDragメソッドは、コンポーネントのpropを引数として取ります。つまり、ドラッグできるオブジェクトは、小道具から派生する必要があります。DragSource仕様のコンポーネント状態にアクセスするにはどうすればいいですか

draggedItemSpec { 
     beginDrag(props, monitor, connect) 
     { 
     /*how do I access component state here? 
Why there is a limitation that when creating dragged object, you should only use props?*/ 
     } 
    } 

答えて

0

状況BeginDragの三番目の引数は、実際には(あたり:http://react-dnd.github.io/react-dnd/docs-drag-source.html)「コンポーネント」あなたの状況BeginDrag以内にあなたが実際に

を行うことができますので、にに滴下し反応させ、コンポーネントのインスタンスへのアクセスを提供し、
draggedItemSpec { 
    beginDrag(props, monitor, component) 
    { 
     const currentState = component.getState(); 
     // Do things with that state 
    } 
} 
関連する問題