我已经阅读了很多关于树梢的投诉,现在我遇到了一些麻烦。
首先,treegrid中的分页无法正常工作。我在另一个不起作用的帖子中找到了一个解决方案,所以我试图为每个人修复它。
第二个是我需要帮助的地方。父节点第一次展开时,它会调用服务器并正确显示子节点。然而,当我崩溃然后再次展开它时,它会将同一个孩子画两次。树崩溃,显示此错误:
Uncaught TypeError: Cannot read property 'internalId' of undefined
在完成它之后,我发现问题不是在它再次插入时,而是在beforeitemexpand
函数中。它会将同一个子项追加两次,导致js和treestore
包含2个具有相同internalId
的节点,从而导致崩溃。
有什么想法吗?
答案 0 :(得分:0)
树存储的工作方式有点复杂。我怀疑你遇到的问题与你的树店正在存储的模型的idProperty有关。
我也遇到了这些问题。我发现你不能在树中的多个位置有两个具有相同身份的记录。例如,如果您的树表示文件系统,并且您将同一文件复制到两个目录中。如果您的文件具有idProperty(默认设置为id),则商店会将您的文件模型放入键入的ID中,而不管它在树中的路径如何。
建议的解决方案是要么根本没有设置id(对于可编辑的树网格不是一个非常好的解决方案),或者设置一个复合键,它考虑整个节点链直到root到被授予者树中的独特性。
一旦你通过了这些问题,这棵树的效果就会很好。哦,并且分页树...不要认为这会很快发生,已经问过了。