« first day (3 days earlier)    last day (15 days later) » 

9:26 AM
@Grundy ку
 
@Bald lf
 
@Grundy все лавочка прикрылась? я про главный чат
 
@Bald неизвестно :-)
 
@Grundy пытаюсь найти твой ответ про про загрузку изменения файла. у Тебя так дофига ответов
 
@Bald он недавно был
1
A: Открыть файл в js, найти строку и дополнить ее. Записать файл

GrundyМожно воспользоваться методом .readAsText(...). В результате в функции onload можно будет получить текст загруженного файла. С сохранением все печальнее. Раньше была речь про FileSaver interface и метод saveAs объекта window, но, похоже, что-то не задалось, и теперь про него нет упоминаний. Но,...

 
9:29 AM
@Grundy спасибо, счас гляну
 
9:42 AM
operationService.getTools(operations)
        .then(file=> {
            console.log(file);
            let blob = new Blob([file], { type: "application/xml" });
            let objectUrl = URL.createObjectURL(blob);

            let a = document.createElement('a');
            a.download = file.name;
            a.href = objectUrl;
            a.click();
        });
вот так работает, единственное что меня смущает так это dispose, обязательно ли это делать
 
@Bald вообще говоря не знаю :-)
но это как висячие указатели :-)
лучше чтобы они не висели :)
 
@Grundy а разве после выхода за скобки не произойдет уборка сборщиком
 
@Bald тут вопрос что именно уберет сборщик :)
 
ну вроде как переменные объявлены через let...
 
@Bald не не не, переменная это переменная
а object url это object url
почитай про него на mdn
 
9:51 AM
@Grundy я так то не против ручной очистки, вопрос в том как узнать что пора очищать объект
 
@Bald по идее тогда, когда он уже не нужен :)
у меня в ответе можешь таймаут увидеть
самое забавное, что я его добавил потому что в одном из браузеров не работало, не помню в каком, то ли в IE, то ли в FF
а в других работало если сразу вызывать revoke после click
 
@Grundy чисто гипотетически, файлы отдаваемый с серва могут весить несколько сотен метров, как понять что объект уже не нужен?
 
@Bald ты не правильно считаешь :)
когда ты делаешь a.click(); файл у тебя уже скачан
 
@Grundy т.е. сразу после этого можно делать revoke?
 
@Bald как я сказал - сразу не во всех браузерах работало :)
поэтому и стоял тайм аут
 
10:00 AM
@Grundy ну так то у меня возможны варианты хром и лиса
 
@Bald посмотри в комментах к ответу, я там писал что что-то не работало :)
 

« first day (3 days earlier)    last day (15 days later) »