本文整理汇总了TypeScript中polymer-analyzer.ParsedHtmlDocument.sourceRangeForAttribute方法的典型用法代码示例。如果您正苦于以下问题:TypeScript ParsedHtmlDocument.sourceRangeForAttribute方法的具体用法?TypeScript ParsedHtmlDocument.sourceRangeForAttribute怎么用?TypeScript ParsedHtmlDocument.sourceRangeForAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类polymer-analyzer.ParsedHtmlDocument
的用法示例。
在下文中一共展示了ParsedHtmlDocument.sourceRangeForAttribute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getAttributeAstLocation
/**
* If the position is inside of the node's attributes section, return the
* correct LocationResult.
*/
function getAttributeAstLocation(
node: parse5.ASTNode,
position: SourcePosition,
document: ParsedHtmlDocument,
location: Parse5Location): AttributesSection|AttributeValue|undefined {
/**
* TODO(rictic): upstream to @types the fact that regular locations (not just
* element locations) can have attrs sometimes.
*/
const attrs: parse5.AttributesLocationInfo =
(isElementLocationInfo(location) && location.startTag.attrs) ||
location['attrs'] || {};
for (const attrName in attrs) {
const range = document.sourceRangeForAttribute(node, attrName);
if (isPositionInsideRange(position, range)) {
if (isPositionInsideRange(
position,
document.sourceRangeForAttributeValue(node, attrName))) {
return {kind: 'attributeValue', attribute: attrName, element: node};
}
return {kind: 'attribute', attribute: attrName, element: node};
}
}
}