本文整理匯總了TypeScript中@glimmer/util.Option類的典型用法代碼示例。如果您正苦於以下問題:TypeScript Option類的具體用法?TypeScript Option怎麽用?TypeScript Option使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Option類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: applyInnerHTMFix
export function applyInnerHTMFix(document: Option<Document>, DOMClass: typeof DOMOperations): typeof DOMOperations {
if (!document) return DOMClass;
if (!shouldApplyFix(document)) {
return DOMClass;
}
let div = document.createElement('div');
return class DOMChangesWithInnerHTMLFix extends DOMClass {
insertHTMLBefore(parent: HTMLElement, nextSibling: Node, html: string): Bounds {
if (html === null || html === '') {
return super.insertHTMLBefore(parent, nextSibling, html);
}
let parentTag = parent.tagName.toLowerCase();
let wrapper = innerHTMLWrapper[parentTag];
if(wrapper === undefined) {
return super.insertHTMLBefore(parent, nextSibling, html);
}
return fixInnerHTML(parent, wrapper, div, html, nextSibling);
}
};
}
示例2: treeConstruction
export function treeConstruction(document: Option<Document>, DOMTreeConstructionClass: typeof DOMTreeConstruction): typeof DOMTreeConstruction {
if (!document) return DOMTreeConstructionClass;
if (!shouldApplyFix(document)) {
return DOMTreeConstructionClass;
}
let div = document.createElement('div');
return class DOMTreeConstructionWithInnerHTMLFix extends DOMTreeConstructionClass {
insertHTMLBefore(parent: HTMLElement, html: string, reference: Node): Bounds {
if (html === null || html === '') {
return super.insertHTMLBefore(parent, html, reference);
}
let parentTag = parent.tagName.toLowerCase();
let wrapper = innerHTMLWrapper[parentTag];
if(wrapper === undefined) {
return super.insertHTMLBefore(parent, html, reference);
}
return fixInnerHTML(parent, wrapper, div, html, reference);
}
};
}
示例3: treeConstruction
export function treeConstruction(document: Option<Document>, TreeConstructionClass: typeof DOMTreeConstruction, svgNamespace: SVG_NAMESPACE): typeof DOMTreeConstruction {
if (!document) return TreeConstructionClass;
if (!shouldApplyFix(document, svgNamespace)) {
return TreeConstructionClass;
}
let div = document.createElement('div');
return class TreeConstructionWithSVGInnerHTMLFix extends TreeConstructionClass {
insertHTMLBefore(parent: HTMLElement, html: string, reference: Node,): Bounds {
if (html === null || html === '') {
return super.insertHTMLBefore(parent, html, reference);
}
if (parent.namespaceURI !== svgNamespace) {
return super.insertHTMLBefore(parent, html, reference);
}
return fixSVG(parent, div, html, reference);
}
};
}
示例4: domChanges
export function domChanges(document: Option<Document>, DOMChangesClass: typeof DOMChanges, svgNamespace: SVG_NAMESPACE): typeof DOMChanges {
if (!document) return DOMChangesClass;
if (!shouldApplyFix(document, svgNamespace)) {
return DOMChangesClass;
}
let div = document.createElement('div');
return class DOMChangesWithSVGInnerHTMLFix extends DOMChangesClass {
insertHTMLBefore(parent: HTMLElement, nextSibling: Node, html: string): Bounds {
if (html === null || html === '') {
return super.insertHTMLBefore(parent, nextSibling, html);
}
if (parent.namespaceURI !== svgNamespace) {
return super.insertHTMLBefore(parent, nextSibling, html);
}
return fixSVG(parent, div, html, nextSibling);
}
};
}