本文整理汇总了TypeScript中@ephox/katamari.Arr.sort方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Arr.sort方法的具体用法?TypeScript Arr.sort怎么用?TypeScript Arr.sort使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@ephox/katamari.Arr
的用法示例。
在下文中一共展示了Arr.sort方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: assertMarker
const sAssertGetAll = (editor: Editor, expected: Record<string, number>, name: string) => Step.sync(() => {
const annotations = editor.annotator.getAll(name);
const keys = Obj.keys(annotations);
const sortedKeys = Arr.sort(keys);
const expectedKeys = Arr.sort(Obj.keys(expected));
Assertions.assertEq('Checking keys of getAll response', expectedKeys, sortedKeys);
Obj.each(annotations, (markers, uid) => {
Assertions.assertEq('Checking number of markers for uid', expected[uid], markers.length);
assertMarker(editor, { uid, name }, markers);
});
});
示例2: updateCallbacks
const onNodeChange = Throttler.last(() => {
const callbackMap = changeCallbacks.get();
const annotations = Arr.sort(Obj.keys(callbackMap));
Arr.each(annotations, (name) => {
updateCallbacks(name, (data) => {
const prev = data.previous.get();
identify(editor, Option.some(name)).fold(
() => {
if (prev.isSome()) {
// Changed from something to nothing.
fireNoAnnotation(name);
data.previous.set(Option.none());
}
},
({ uid, name, elements }) => {
// Changed from a different annotation (or nothing)
if (! prev.is(uid)) {
fireCallbacks(name, uid, elements);
data.previous.set(Option.some(uid));
}
}
);
return {
previous: data.previous,
listeners: data.listeners
};
});
});
}, 30);
示例3:
const sortPatterns = <T extends Pattern>(patterns: T[]): T[] => {
return Arr.sort(patterns, (a, b) => {
if (a.start.length === b.start.length) {
return 0;
}
return a.start.length > b.start.length ? -1 : 1;
});
};
示例4: if
const getMaxHeight = (heights: number[]) => {
return Arr.head(Arr.sort(heights, (a, b) => {
if (a > b) {
return -1;
} else if (a < b) {
return +1;
} else {
return 0;
}
}));
};