• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript htmlparser2.Parser类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中htmlparser2.Parser的典型用法代码示例。如果您正苦于以下问题:TypeScript Parser类的具体用法?TypeScript Parser怎么用?TypeScript Parser使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



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

示例1: rej

			return new Promise<number>((res, rej) => {
				let lineIndex: number = 0;
				let changeFound: boolean;
				let tags: string[] = [];
				let parser = new htmlparser.Parser({
					onopentag: function (name: string, attribs: any) {
						tags.push(name);
						if (name === 'div' && !attribs.class) {
							lineIndex++;
						} else if (name === 'div' && attribs.class === changeClass) {
							changeFound = true;
							parser.end();
						}
					},
					onclosetag: function (name) {
						// Terminate once last tag is closed
						tags.pop();
						if (!changeFound && tags.length === 0) {
							parser.end();
						}
					},
					onend: function () {
						if (!changeFound) {
							return rej(`No changes in the diff found.`);
						}
						return res(lineIndex);
					}
				});
				parser.write(html);
			});
开发者ID:kieferrm,项目名称:vscode,代码行数:30,代码来源:git.ts


示例2: Promise

		return new Promise(async (res, rej) => {
			const html = await this.spectron.waitFor(this.spectron.client.getHTML, selector);
			let lineIndex: number = 0;
			let stringFound: boolean;
			let parser = new htmlparser.Parser({
				onopentag: function (name: string, attribs: any) {
					if (name === 'div' && attribs.class === 'view-line') {
						lineIndex++;
					}
				},
				ontext: function (text) {
					if (!stringFound && text === string) {
						stringFound = true;
						parser.end();
					}
				},
				onend: function () {
					if (!stringFound) {
						return rej(`No ${string} in editor found.`);
					}
					return res(lineIndex);
				}
			});
			parser.write(html);
		});
开发者ID:naturtle,项目名称:vscode,代码行数:25,代码来源:javascript.ts


示例3: make

/**
 * 将 source 转换成 dom 节点树
 *
 * @param {string} source
 * @returns
 */
function make (source: string) {
  let handler = new htmlparser.DomHandler()
  let parser = new htmlparser.Parser(handler, {
    lowerCaseAttributeNames: false
  })

  parser.write(source)
  parser.done()
  return handler.dom
}
开发者ID:bbxyard,项目名称:bbxyard,代码行数:16,代码来源:dom.ts


示例4: rej

			return new Promise<number>((res, rej) => {
				let lineIndex: number = 0;
				let foldFound: boolean;
				let parser = new htmlparser.Parser({
					onopentag: function (name: string, attribs: any) {
						if (name === 'div' && !attribs.class) {
							lineIndex++;
						} else if (name === 'div' && attribs.class.indexOf('cldr folding') !== -1) {
							foldFound = true;
							parser.end();
						}
					},
					onend: function () {
						if (!foldFound) {
							return rej(`No foldable elements found.`);
						}
						return res(lineIndex);
					}
				});
				parser.write(html);
			});
开发者ID:armanio123,项目名称:vscode,代码行数:21,代码来源:javascript.ts


示例5: parseHTML

export default function parseHTML(src: string) {
  var handler = new DomHandler();
  var p = new Parser(handler);
  p.parseComplete(src);
  function fix(dom: DomNode | DomNode[]): DomNode[] {
    if (Array.isArray(dom)) {
      return dom.map(fix).reduce(function(a, b) {
        return a.concat(b);
      }, []);
    } else if (dom.type != 'tag') {
      return [dom];
    } else if (selfClosing.indexOf(dom.name.toLowerCase()) === -1) {
      if (dom.children) dom.children = fix(dom.children);
      else dom.children = [];
      return [dom];
    } else {
      var c = dom.children;
      dom.children = [];
      return [dom as DomNode].concat(fix(c || []));
    }
  }
  return new DOM(fix(handler.dom));
}
开发者ID:esdiscuss,项目名称:pipermail,代码行数:23,代码来源:html.ts


示例6: function

					onclosetag: function (name) {
						// Terminate once last tag is closed
						tags.pop();
						if (!changeFound && tags.length === 0) {
							parser.end();
						}
					},
开发者ID:kieferrm,项目名称:vscode,代码行数:7,代码来源:git.ts


示例7: function

					onopentag: function (name: string, attribs: any) {
						if (name === 'div' && !attribs.class) {
							lineIndex++;
						} else if (name === 'div' && attribs.class.indexOf('cldr folding') !== -1) {
							foldFound = true;
							parser.end();
						}
					},
开发者ID:armanio123,项目名称:vscode,代码行数:8,代码来源:javascript.ts



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript http.Server函数代码示例发布时间:2022-05-25
下一篇:
TypeScript html-to-text.fromString函数代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap