Comments (6)
Managed to solve it by wrapping the <Sortablelist>
itself with <AutoSizer/>
and passing the width to the <VirtualScroll />
<AutoSizer disableHeight>
{({ width }) => (
<SortableList ref="SortableList" items={items} width={width} onSortEnd={this.onSortEnd} />
)}
</AutoSizer>
class VirtualList extends Component {
render() {
const { items, width } = this.props;
return (
<VirtualScroll
ref="VirtualScroll"
estimatedRowSize={70}
rowHeight={70}
rowRenderer={({ index }) => {
const { product } = items[index];
return <SortableItem index={index} product={product} />;
}}
rowCount={items.length}
width={width}
height={500}
/>
);
}
}
from react-sortable-hoc.
Sounds like you've solved this :)
from react-sortable-hoc.
Simply the hierarchy for the solution looks like this and width is getting passed from top to bottom, I hope it makes sense.
AutoSizer
|__SortableList
|__ VirtualList
from react-sortable-hoc.
Thank you for this Issue thread, it fixed my issue. I suggest adding this to the docs somewhere as I only found this fix thanks to Google after reading through the docs and examples.
from react-sortable-hoc.
Hi @ahmedelgabri, it may be the late hour but I can't seem to grok your solution.
There's the Autosizer
'd SortableList
and then there's the VirtualScroll
.
How is the end result composed?
I know this ticket is pretty stale, but would you (or anyone else for that matter) mind expanding on your answer?
Thanks!
from react-sortable-hoc.
Ah, thanks @ahmedelgabri, I really appreciate your quick answer. I was missing that you apparently also had:
const SortableList = SortableContainer(VirtualList, {withRef: true});
Unfortunately, after following the pattern you described, I still have two big problems:
1. this.refs.SortableList
is undefined (I need that in my onSortEnd
function)
2. I still can't get autoscroll to work 🤔
Update: I fixed the first problem by adding a ref to Autosizer: <AutoSizer ref="AutoSizer">
and then accessing this.refs.AutoSizer.refs.SortableList
from react-sortable-hoc.
Related Issues (20)
- Notice for new consumers does not show up on npm
- bug
- Uncaught TypeError: cannot call a class as a function HOT 1
- When will react18 be supported?
- type error warning JSX component in typescript
- Create a drop UI state on the Sections showing the area where the selected section can be moved
- Type mistake For "React.FC" HOT 1
- not working on "react": "^18.2.0", HOT 2
- Child component state is reset to initial state if any state of parent component is changed
- shouldCancelStart is not a function HOT 1
- How to detect the boundary of the collection of current being dragged row? HOT 1
- TypeError: Cannot read properties of undefined (reading 'add') HOT 1
- getScrollingParent's "el instanceof HTMLElement" logic will cause some problems
- tabs not working in react sortable hoc
- not able to use with [email protected] HOT 3
- Large Data HOT 1
- when there is input field in the sortableElement than input field is loosing focus on every key press
- Dispatch state before drag starts is taking effect only when the mouse is released. HOT 2
- any way to use column and row drag in one table
- react 18.2.0 installing issue please update this package HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-sortable-hoc.