【问题标题】:Update all href anchor links in folder of HTML files更新 HTML 文件文件夹中的所有 href 锚链接
【发布时间】:2018-10-28 13:44:28
【问题描述】:

我正在使用 Gatsbyjs 生成一个静态站点,这会输出一个包含静态 HTML 文件的文件夹。

我需要在 Microsoft SharePoint 上托管这些 HTML 文件 - 这需要将 .html 转换为 .aspx 以便它们运行。

我有一个后记,它将所有 .html 更新为 .aspx(这很好用)。

但是,所有生成的链接都指向该文件夹:

<a href="/folder/">link</a>

为了在 sharepoint 上工作,我需要更新每个 html 文件中的每个 href 以指向每个文件夹中的 index.aspx 文件:

<a href="/folder/index.aspx">link</a>

后期构建的最佳方法是什么?理想情况下,我想将此作为我的构建后脚本的一部分。这可以通过 webpack 实现吗?还是我最好使用 JSDOM 之类的东西来遍历每个文件并更新每个链接?

【问题讨论】:

    标签: javascript html node.js webpack gatsby


    【解决方案1】:

    你可能最好使用cheerio,它比 jsdom 更轻,并且支持大部分 jquery 语法。

    var html = fs.readFileSync(input.html);
    const $ = cheerio.load(html);
    var output = $('a[href="folder"').attr('href', '/folder/index.aspx').html();
    

    【讨论】:

      猜你喜欢
      • 2016-08-26
      • 2018-02-26
      • 2021-03-26
      • 2018-05-23
      • 1970-01-01
      • 2014-08-08
      • 1970-01-01
      • 2017-11-01
      • 1970-01-01
      相关资源
      最近更新 更多