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

TypeScript dom5.hasAttribute函数代码示例

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

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



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

示例1: test

    test('Base tag emulation should not leak to other imports', async () => {
      const {ast: doc} = await bundle('base.html');
      const clickMe = dom5.query(doc, preds.hasTextValue('CLICK ME'));
      assert.ok(clickMe);

      // The base target from `test/html/imports/base.html` should apply to
      // the anchor tag in it.
      assert.equal(dom5.getAttribute(clickMe!, 'target'), 'foo-frame');

      const doNotClickMe =
          dom5.query(doc, preds.hasTextValue('DO NOT CLICK ME'));
      assert.ok(doNotClickMe);

      // The base target from `test/html/imports/base.html` should NOT apply
      // to the anchor tag in `test/html/imports/base-foo/sub-base.html`
      assert.isFalse(dom5.hasAttribute(doNotClickMe!, 'target'));
    });
开发者ID:Polymer,项目名称:tools,代码行数:17,代码来源:bundler_test.ts


示例2: _inlineStylesheet

  /**
   * Inlines the contents of the stylesheet returned by the link tag's href
   * URL into a style tag and removes the link tag.
   */
  private async _inlineStylesheet(cssLink: ASTNode) {
    const stylesheetHref = dom5.getAttribute(cssLink, 'href')!;
    const resolvedImportUrl = this.bundler.analyzer.urlResolver.resolve(
        this.assignedBundle.url, stylesheetHref as FileRelativeUrl);
    if (resolvedImportUrl === undefined) {
      return;
    }
    if (this.bundler.excludes.some(
            (e) => resolvedImportUrl === e ||
                resolvedImportUrl.startsWith(ensureTrailingSlash(e)))) {
      return;
    }
    const stylesheetImport =  // HACK(usergenic): clang-format workaround
        find(
            this.document.getFeatures(
                {kind: 'html-style', imported: true, externalPackages: true}),
            (i) => i.document !== undefined &&
                i.document.url === resolvedImportUrl) ||
        find(
            this.document.getFeatures(
                {kind: 'css-import', imported: true, externalPackages: true}),
            (i) => i.document !== undefined &&
                i.document.url === resolvedImportUrl);
    if (stylesheetImport === undefined ||
        stylesheetImport.document === undefined) {
      this.assignedBundle.bundle.missingImports.add(resolvedImportUrl);
      return;
    }
    const stylesheetContent = stylesheetImport.document.parsedDocument.contents;
    const media = dom5.getAttribute(cssLink, 'media');

    let newBaseUrl = this.assignedBundle.url;

    // If the css link we are about to inline is inside of a dom-module, the
    // new base URL must be calculated using the assetpath of the dom-module
    // if present, since Polymer will honor assetpath when resolving URLs in
    // `<style>` tags, even inside of `<template>` tags.
    const parentDomModule =
        findAncestor(cssLink, dom5.predicates.hasTagName('dom-module'));
    if (!this.bundler.rewriteUrlsInTemplates && parentDomModule &&
        dom5.hasAttribute(parentDomModule, 'assetpath')) {
      const assetPath = (dom5.getAttribute(parentDomModule, 'assetpath') ||
                         '') as FileRelativeUrl;
      if (assetPath) {
        newBaseUrl =
            this.bundler.analyzer.urlResolver.resolve(newBaseUrl, assetPath)!;
      }
    }
    const resolvedStylesheetContent = this._rewriteCssTextBaseUrl(
        stylesheetContent, resolvedImportUrl, newBaseUrl);
    const styleNode = dom5.constructors.element('style');
    if (media) {
      dom5.setAttribute(styleNode, 'media', media);
    }

    dom5.replace(cssLink, styleNode);
    dom5.setTextContent(styleNode, resolvedStylesheetContent);

    // Record that the inlining took place.
    this.assignedBundle.bundle.inlinedStyles.add(resolvedImportUrl);
    return styleNode;
  }
开发者ID:Polymer,项目名称:vulcanize,代码行数:66,代码来源:html-bundler.ts



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
TypeScript dom5.insertBefore函数代码示例发布时间:2022-05-25
下一篇:
TypeScript dom5.getTextContent函数代码示例发布时间: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