Element-ui InfiniteScroll 为何触发 load 方法?
Element-ui InfiniteScroll 是否存在 Bug?
在使用
Element-ui 从 DOM 中获取属性值时,会将其转换为空字符串或 null。但是,Vue 在处理绑定属性时,会默认将 false 转换为 null,而 Element-ui 却将 null 视为 true。这导致 InfiniteScroll 指令始终触发 load 方法。
虽然存在这种情况,但不能完全归咎于 Element-ui。原因如下:
- InfiniteScroll 是指令,非 Props: InfiniteScroll 属性实际上是附加到元素的 DOM 属性,而不是 Vue 组件的 Props。DOM 属性都是字符串,不存在布尔类型。
- Vue 将 false 转换为 null: Vue 默认将 false 转换为 null,因此 :infinite-scroll-immediate="false" 会绑定 null 到 DOM 属性。
- InfiniteScroll 将 null 视为 true: Element-ui 对 DOM 属性的处理未考虑到此情况,将 null 视为 true。
综合以上因素,这种情况既不能完全归咎于 Element-ui,也不能完全归咎于 Vue。但 Element-ui 缺少明确的文档说明可能会导致用户困惑。因此,建议 Element-ui 在文档中明确说明 InfiniteScroll 属性的绑定方式,以避免此类问题。
以上就是Element-ui InfiniteScroll 为何触发 load 方法?的详细内容,更多请关注其它相关文章!