Скрипт для создания множества файлов разметки из одного файла json добавляет обратно в префикс http: и https: к ссылкам. Зачем? - PullRequest
1 голос
/ 10 апреля 2019

У меня есть большой файл json, который заполняет веб-сайт вопросами с использованием gatsby.js (не важно для вопроса) и уценки (важно).Мои данные выглядят примерно так.

"-JugHeFMJfGN071lmqqo" : {
      "askedHistPercent1" : "58",
      "askedHistPercent2" : "54",
      "askedHistYear1" : "2018",
      "askedHistYear2" : "2015",
      "author" : "Author Name",
      "categories" : [ "Category 1", "Cat 2", "Cat 3" ],
      "date" : "2015-07-20 09:27:29",
      "definition" : "Long Definition here. Includes a now //link to show the content. Was a http://link or https://link before I deleted all the link prefixes with control-f replace",
      "permalink" : "//www.Urlherelong",
      "title" : "Title here"
    }, 


и т. Д. Для еще 1600 элементов в этом файле .json.Я построил следующий скрипт для извлечения всей информации в файлы разметки в качестве фронт-мата yaml для использования с gatsby graphql.Это не выглядит красиво, но работает 99,99% времени

const fs = require("fs");
const YAML = require("yamljs");
const bigObject = require("../1111data.json");
var _ = require("lodash");

Object.entries(bigObject).forEach(([name, data]) => {
  fs.writeFile(`${_.kebabCase(data.title)}.md`, "---\r\n", err => {
    fs.appendFile(`${_.kebabCase(data.title)}.md`,YAML.stringify(data),
      err => {
        fs.appendFile(`${_.kebabCase(data.title)}.md`, "\r\n---\r\n", err => {

          if (err) throw err;
          console.log(`${_.kebabCase(data.title)}.md has been saved!`);

        });
      }
    );
  });
});

В любом случае, скрипт возвращает префиксы http и https в мои URL-ссылки.Старшие разработчики в моей команде хотят, чтобы у меня вместо этого были // префиксы для всех URL.После удаления всех https: и http: из моего файла .json, poof, они снова появятся.Я чешу голову, сидя здесь, потому что я никогда не говорил им делать это.Вы думаете, что сценарий будет на 100% информацией, которую он извлекает, верно?Это то, что я получаю.

---
askedHistPercent1: "35"
askedHistYear1: "2008"
assocMediaLink1: ""
author: ""
categories:
  - category1
content: ""
date: "2015-03-05 17:01:55"
definition: "http://link here again. Rest of definition"
excerpt: "yada yada"
id: 14247
permalink: "http://link"
title: "title"
---

Есть ли что-то, что я могу добавить в свой сценарий, чтобы заблокировать повторное добавление префиксов ссылок http и https и сохранить их вместо //www.etc?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...