您可以将 TreeLayout.sorting 参数设置为 go.TreeLayout.SortingAscending 或者 go.TreeLayout.SortingDescending,以根据节点的数据模型属性对节点进行排序。例如,如果您的节点数据模型有一个名为 "order" 的属性,您可以这样设置 TreeLayout.sorting: 给出代码示例
时间: 2024-02-09 19:09:11 浏览: 20
当您的节点数据模型包含一个名为 "order" 的属性时,您可以按照以下方式设置 TreeLayout.sorting:
```javascript
$(go.Diagram, "myDiagramDiv",
{
layout: $(go.TreeLayout,
{
sorting: go.TreeLayout.SortingAscending,
comparer: function(a, b) {
var orderA = a.data.order;
var orderB = b.data.order;
if (orderA < orderB) return -1;
if (orderA > orderB) return 1;
return 0;
},
...
}),
...
```
在这个示例中,我们使用 `comparer` 函数来比较节点的 "order" 属性,以确定节点的排序顺序。该函数返回一个负数表示 a 在 b 之前,返回一个正数表示 a 在 b 之后,返回 0 表示 a 和 b 相等。
注意,在这个示例中,我们设置了 `sorting` 参数为 `SortingAscending`,以指示应按升序排序节点。如果您想按照降序排序节点,请将 `sorting` 参数设置为 `SortingDescending`。
当您设置了 `sorting` 参数之后,GoJS 将自动调用 `comparer` 函数来比较节点,并使用该函数的返回值来确定节点的排序顺序。