gpt4 book ai didi

javascript - JavaScript中有没有类似ViewHolder的功能?

转载 作者:行者123 更新时间:2023-11-28 10:58:12 25 4
gpt4 key购买 nike

我正在做一个 PhoneGap Android 项目作为学习经验。

我想根据特定列的长度动态实现SwipeView,我的疑问是:

1) 你能计算出特定列的长度吗?我们通过以下代码来实现:

var a = results.rows.length;

我无法添加如下内容

var a = results.COLUMN_NAME.length;

2)我想根据数据库中记录的长度动态实现SwipeView

我正在考虑使用 ViewHolder,就像我们在 Android 中所做的那样,例如

mSwipeView.addView(holder.getView(j));

public class ViewHolder { ... }

这是正确的吗? JavaScript 中是否有类似于 ViewHolder 的功能?

最佳答案

我认为 Javascript 中的 ViewHolder 应该保留对 DOM 元素的引用,这样您就不必查询它。

例如,如果您有可遍历的列表,并且每个项目都类似于具有类 item_0...item_n (或任何其他属性)的 div 元素(或其他任何元素),我们的 View 持有者应该保存对这些元素的引用,例如:

var viewHolder = [];
viewHolder[0] = document.querySelector('item_0');
...
viewHolder[n] = document.querySelector('item_n');

然后,如果您需要引用这些元素,例如设置文本属性或其他任何内容,您可以使用持有者来完成,而不是不断查询 DOM:

viewHolder[n].text = "Some text";

当然,我们的 View 持有者应该比我的示例更加面向对象,这仅用于演示目的。

附注不要忘记“无效”viewHolder,否则可能会出现内存泄漏,因为仍然有变量链接到 DOM 对象。

关于javascript - JavaScript中有没有类似ViewHolder的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16275620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com