当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript Traverse.child方法代码示例

本文整理汇总了TypeScript中@ephox/sugar.Traverse.child方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Traverse.child方法的具体用法?TypeScript Traverse.child怎么用?TypeScript Traverse.child使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@ephox/sugar.Traverse的用法示例。


在下文中一共展示了Traverse.child方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: getAttr

const identify = (editor: Editor, annotationName: Option<string>): Option<{uid: string, name: string, elements: any[]}> => {
  const rng = editor.selection.getRng();

  const start = Element.fromDom(rng.startContainer);
  const root = Element.fromDom(editor.getBody());

  const selector = annotationName.fold(
    () => '.' + Markings.annotation(),
    (an) => `[${Markings.dataAnnotation()}="${an}"]`
  );

  const newStart = Traverse.child(start, rng.startOffset).getOr(start);
  const closest = SelectorFind.closest(newStart, selector, (n) => {
    return Compare.eq(n, root);
  });

  const getAttr = (c, property: string): Option<any> => {
    if (Attr.has(c, property)) {
      return Option.some(Attr.get(c, property));
    } else {
      return Option.none();
    }
  };

  return closest.bind((c) => {
    return getAttr(c, `${Markings.dataAnnotationId()}`).bind((uid) =>
      getAttr(c, `${Markings.dataAnnotation()}`).map((name) => {
        const elements = findMarkers(editor, uid);
        return {
          uid,
          name,
          elements
        };
      })
    );
  });
};
开发者ID:danielpunkass,项目名称:tinymce,代码行数:37,代码来源:Identification.ts

示例2: resolve

 return Option.from(container).map(SugarElement.fromDom).map((elm) => {
   return !real || !rng.collapsed ? Traverse.child(elm, resolve(elm, offset)).getOr(elm) : elm;
 }).bind((elm) => SugarNode.isElement(elm) ? Option.some(elm) : Traverse.parent(elm)).map((elm: any) => elm.dom()).getOr(root);
开发者ID:tinymce,项目名称:tinymce,代码行数:3,代码来源:ElementSelection.ts

示例3:

 find: (comp: AlloyComponent) => {
   return Traverse.child(comp.element(), index).bind((element) => {
     return comp.getSystem().getByDom(element).toOption();
   });
 }
开发者ID:tinymce,项目名称:tinymce,代码行数:5,代码来源:ComposingConfigs.ts


注:本文中的@ephox/sugar.Traverse.child方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。