Как сохранить переменную в массиве в другом файле - PullRequest
1 голос
/ 31 мая 2019

Что я сделал / попробовал до сих пор:

Я создал файл с именем links.js, который содержит один массив.

У меня есть мой основной файл (index.js), который вы запускаете, и он очищает URL;
Мне нужно сохранить URL-адрес в файле links.js в формате, который я создал, чтобы я мог запустить вторую часть моей программы, для которой требуется links.js в определенном формате и использовать URL-адреса, полученные из моего index.js

Я пробовал fs, создавал потоки и т. Д., Но я все еще изучаю nodejs, поэтому я не совсем понимаю его и не могу найти проблему в стеке, достаточно похожую, чтобы понять, что делать ..

Обзор формата, необходимого для файла links.js, расширяющего массив url каждый раз другим URL из index.js: Это формат массива links.js, который мне нужен в качестве примера

url = ['url1.com','url2.com','url3.com'];

module.exports{url:url};

Как мне кодировать мой index.js, чтобы он сохранял мою переменную в указанном выше формате в links.js (файл, отличный от того, в котором я нахожусь)?

мой index.js в настоящее время сохраняет URL в test2[1]

Я могу подтвердить, что это то, что я хочу сохранить, выполнив console.log(test2[1]);

Извините, если это трудно понять, я не знаю, как объяснить это намного лучше, но если вы что-то путаете, дайте мне знать, и я постараюсь перефразировать это!

Спасибо за любую помощь :)

Ожидания / Желаемые результаты:
Я ожидаю, что test2 [1] вернет http://example.com на index.js
Я использую index.js, чтобы затем сохранить test2 [1] и поместить его в links.js, но сохраняя формат файла links.js, как описано и показано выше.

Я ожидаю, что он не будет перезаписан, так как индекс использует pupeteer и циклически перебирает URL-адреса веб-сайтов, и каждый из них должен быть сохранен в одной папке links.js, просто увеличив размер массива.

1 Ответ

2 голосов
/ 31 мая 2019

Вы можете сохранить его как файл json.

const fs = require('fs')
const file = "./urls.json"

const urls = require(file )

//Here you update urls array
urls.push("url4.com")

fs.writeFileSync(file, JSON.stringify(urls))

urls.json

["url1.com","url2.com","url3.com", "url4.com"]
...