vue-virtual-scroller
vue-virtual-scroller copied to clipboard
Functional sizeField for RecycleScroller's variable-size mode
Clear and concise description of the problem
When using recycle-scroller's variable size mode, a "sizeField" can be defined. This sizeField, however, can only be a constant number and not a function that outs a number. I have a component where sizes vary with respective to a scale parameter and hence, I need the sizeField to be a function (synchronous) that returns a number instead. (So that I can return something like defaultSize * scale
)
Suggested solution
Currently, in variable size mode
current = items[i][field] || minItemSize
This can be replaced by
current = ((typeof items[i][field] === 'function') ? items[i][field]() : items[i][field]) || minItemSize;
Alternative
No response
Additional context
No response
Validations
- [X] Read the docs.
- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
I can open a PR if you guys are willing to accept this change. (Also, I'm using Vue 2 in my project that requires this behavior)
It would probably make more sense to accept a function for itemSize
prop
接受 prop 的函数可能更有意义
itemSize
If this feature is really implemented, that would be great
This feature is indeed very practical
In addition, if "itemSize" can support CSS units other than px, then it should be more flexible.