#javascript #p5.js
Вопрос:
У меня есть файл JS шаблона, в котором мне нужно изменить 1 переменную, а затем сохранить копию этого файла js. Я не могу использовать node, потому что он не поддерживает p5. Мне интересно, есть ли способ сделать это локально.
let resu<
function preload() {
result = loadStrings('template.js')
}
function setup() {
if (result[0] != null) {
result[0] = "let number = " """ 1 """;
let writer = createWriter('modifiedTemplate.js');
writer.write(result)
writer.close()
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.0/p5.min.js"></script>
Ответ №1:
Если я правильно понимаю, вы хотите загрузить файл, отредактировать его и сохранить как новый файл. В таком случае, то, что у вас есть, в значительной степени там.
Единственные потенциальные проблемы, которые я вижу, заключаются в следующем — Допустим, у вас есть файл шаблонов, который выглядит следующим образом:
let number = 10;
let count = 4;
И ты хочешь измениться let number = 10
на let number = 1
. Прежде всего, для этого вы можете использовать шаблонные литералы:
result[0] = `let number = 1;`;
Затем то, что у вас есть, должно сохранить файл, однако он будет не в том формате, который вы могли бы ожидать — вывод файла будет:
let number = 1;,let count = 4;
Такова природа метода javascript toString. Я бы рекомендовал присоединиться к массиву и отделить каждую строку новой строкой:
writer.write(result.join('n'));
Что должно привести к следующему:
let number = 1;
let count = 4;
Если вы застрянете, я реализовал это в p5.js набросок, который должен указать вам правильное направление.
Комментарии:
1. Спасибо за улучшения, но проблема с моим текущим кодом заключается в том, что файл сохраняется на стороне клиента. Я хотел бы скопировать эти файлы в тот же каталог, в котором у меня есть скрипт js и html