Как в проекте Gatsby с gatsby-transformer-comment изменить ссылку Markdown с folder1 / filename.md на / folder1 / filename /? - PullRequest
0 голосов
/ 11 июля 2020

В этом проекте Gatsby я использую gatsby-transformer-remark для преобразования страниц Markdown в html.

У меня есть эта проблема .

Вопрос: Как мне настроить gatsby-transformer-remark, чтобы переименовать все *.md ссылку на */?

Думаю, мне нужно изучить Как изменить относительный путь ссылки Markdown как предварительная обработка gatsby-transformer-примечания

1 Ответ

0 голосов
/ 11 июля 2020

Я нашел решение: https://github.com/stephane-klein/gatsby-remark-convert-linker-from-md-to-html-example/commit/a941cf990be4a16c72c46e3c893f37509a3e5890

В plugins/gatsby-remark-relative-linker/index.js:

const visit = require('unist-util-visit');
module.exports = ({ markdownAST }) => {
  visit(markdownAST, 'link', node => {
    if (
      node.url &&
      !node.url.startsWith('//') &&
      !node.url.startsWith('http')
    ) {
      node.url = node.url.replace(/^(.*)\.md$/, (match, path) => {
        return `/${path}/`;
      })
    }
  });

  return markdownAST;
};

См. Полный пример здесь: https://github.com/stephane-klein/gatsby-remark-convert-linker-from-md-to-html-example

...