本文整理汇总了TypeScript中@ephox/katamari.Strings.endsWith方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Strings.endsWith方法的具体用法?TypeScript Strings.endsWith怎么用?TypeScript Strings.endsWith使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@ephox/katamari.Strings
的用法示例。
在下文中一共展示了Strings.endsWith方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: textBefore
return textBefore(node, offset, block).bind(({node: endNode, offset: endOffset}) => {
const text = endNode.data.substring(0, endOffset);
for (let i = 0; i < patterns.length; i++) {
const pattern = patterns[i];
if (!Strings.endsWith(text, pattern.end)) {
continue;
}
const newOffset = endOffset - pattern.end.length;
// when the pattern only has a start or end we don't want to try to match inner patterns
const hasContent = pattern.start.length > 0 && pattern.end.length > 0;
const allowInner = hasContent ? Option.some(true) : Option.none();
const recursiveMatch = allowInner.bind(() => {
const patternsWithoutCurrent = patterns.slice();
patternsWithoutCurrent.splice(i, 1);
return findInlinePatternRec(dom, patternsWithoutCurrent, endNode, newOffset, block);
}).fold(() => {
const start = findInlinePatternStart(dom, pattern, endNode, newOffset, block, hasContent);
return start.map(({node: startNode, offset: startOffset}) => {
const range = generatePathRange(dom.getRoot(), startNode, startOffset, endNode, endOffset).getOrDie('Internal constraint violation');
return [{ pattern, range }];
});
}, (areas) => {
const outermostRange = resolvePathRange(dom.getRoot(), areas[areas.length - 1].range).getOrDie('Internal constraint violation');
const start = findInlinePatternStart(dom, pattern, outermostRange.startNode, outermostRange.startOffset, block);
return start.map(({node: startNode, offset: startOffset}) => {
const range = generatePathRange(dom.getRoot(), startNode, startOffset, endNode, endOffset).getOrDie('Internal constraint violation');
return areas.concat([{ pattern, range }]);
});
});
if (recursiveMatch.isSome()) {
return recursiveMatch;
}
}
return Option.none();
});
示例2:
children: Arr.map(items, (itemText) => {
// itemText can have a trailing >, which means it has a caret
const hasCaret = Strings.endsWith(itemText, '>');
return s.element('div', {
classes: [ arr.has('tox-collection__item') ],
children: [
s.element('div', { classes: [ arr.has('tox-collection__item-icon') ] }),
s.element('div', {
classes: [ arr.has('tox-collection__item-label') ],
html: str.is(hasCaret ? itemText.substring(0, itemText.length - 1) : itemText)
})
].concat(hasCaret ? [
s.element('div', { classes: [ arr.has('tox-collection__item-caret') ] })
] : [ ])
});
})