Size: a a a

ECMAScript Developers

2020 April 28

a

azdek in ECMAScript Developers
Nursultan Batyrkanov
мне нужно именно подписаться на ивент
Голый ws?
источник

NB

Nursultan Batyrkanov in ECMAScript Developers
да
источник

a

azdek in ECMAScript Developers
WS.onmessage = ({type, ...data}) => console.log(type)
источник

a

azdek in ECMAScript Developers
Ну или ws.addEventListener("eventName", callback)
источник

NB

Nursultan Batyrkanov in ECMAScript Developers
azdek
Ну или ws.addEventListener("eventName", callback)
мне было интересно можно ли ещё раз подписаться на ивент, к которому мы уже подписались но уже в другом файле

webSocketClient = new WebSocket(webSocketUrl);

webSocketClient.onopen = function(event) { onOpen(event) };
webSocketClient.onclose = function(event) { onClose(event) };
webSocketClient.onmessage = function(event) { onMessage(event) };
webSocketClient.onerror = function(event) { onError(event) };
источник

a

azdek in ECMAScript Developers
Nursultan Batyrkanov
мне было интересно можно ли ещё раз подписаться на ивент, к которому мы уже подписались но уже в другом файле

webSocketClient = new WebSocket(webSocketUrl);

webSocketClient.onopen = function(event) { onOpen(event) };
webSocketClient.onclose = function(event) { onClose(event) };
webSocketClient.onmessage = function(event) { onMessage(event) };
webSocketClient.onerror = function(event) { onError(event) };
Можно, но почему бы не использовать экземпляр уже созданного?
источник

NB

Nursultan Batyrkanov in ECMAScript Developers
azdek
Можно, но почему бы не использовать экземпляр уже созданного?
конкуренции не будет?
источник

a

azdek in ECMAScript Developers
Nursultan Batyrkanov
конкуренции не будет?
Все колбеки по 2 раза будут срабатывать
источник

NB

Nursultan Batyrkanov in ECMAScript Developers
azdek
Можно, но почему бы не использовать экземпляр уже созданного?
перетирается и работает только в том месте где последний раз подписались
источник
2020 April 29

LF

Libron FCB in ECMAScript Developers
Ребята, сорри за глубый вопрос. Какой метод часто имплементируют на кнопку "Download" в React ?
нашел эти варианты:
1) Обернуть в родной <Link to={file.url} target="_blank" download  />  (НО с абсолютным внешними путями вроде не работает, по доке)
2) Обернуть в обычный <a />с аттрибутом download
3) навесить callback, делать ajax-запрос, вытаскивать файл через blob ?

Задача: скачать файл, не открывать в текущем окне, путь к файлу - абсолютный. Браузеру почему то плевать на аттрибут download на известные форматы файлов
источник

Э

Эльдияр in ECMAScript Developers
Libron FCB
Ребята, сорри за глубый вопрос. Какой метод часто имплементируют на кнопку "Download" в React ?
нашел эти варианты:
1) Обернуть в родной <Link to={file.url} target="_blank" download  />  (НО с абсолютным внешними путями вроде не работает, по доке)
2) Обернуть в обычный <a />с аттрибутом download
3) навесить callback, делать ajax-запрос, вытаскивать файл через blob ?

Задача: скачать файл, не открывать в текущем окне, путь к файлу - абсолютный. Браузеру почему то плевать на аттрибут download на известные форматы файлов
через blob
источник

DM

Daniel Manasov in ECMAScript Developers
Libron FCB
Ребята, сорри за глубый вопрос. Какой метод часто имплементируют на кнопку "Download" в React ?
нашел эти варианты:
1) Обернуть в родной <Link to={file.url} target="_blank" download  />  (НО с абсолютным внешними путями вроде не работает, по доке)
2) Обернуть в обычный <a />с аттрибутом download
3) навесить callback, делать ajax-запрос, вытаскивать файл через blob ?

Задача: скачать файл, не открывать в текущем окне, путь к файлу - абсолютный. Браузеру почему то плевать на аттрибут download на известные форматы файлов
Через ссылки, а не работает скорее всего потому что бэкенд не добавляет хэдер Content-Disposition: attachment
источник

LF

Libron FCB in ECMAScript Developers
Daniel Manasov
Через ссылки, а не работает скорее всего потому что бэкенд не добавляет хэдер Content-Disposition: attachment
то есть вариант 2 ? А если ссылка введет вообще на другой домен, точнее файл лежит допустим на AWS ?
источник

LF

Libron FCB in ECMAScript Developers
Эльдияр
через blob
я так понял, + blob в том что он гарантирует "скачивание" а не открытие на любых браузерах
источник

Э

Эльдияр in ECMAScript Developers
Libron FCB
я так понял, + blob в том что он гарантирует "скачивание" а не открытие на любых браузерах
ну там хранится обьект файла что в дальнейшем можешь что то делать, аякс запрос на то аякс чтобы рааботала на текущей странице
источник

LF

Libron FCB in ECMAScript Developers
Эльдияр
ну там хранится обьект файла что в дальнейшем можешь что то делать, аякс запрос на то аякс чтобы рааботала на текущей странице
Ага
источник

DM

Daniel Manasov in ECMAScript Developers
Libron FCB
то есть вариант 2 ? А если ссылка введет вообще на другой домен, точнее файл лежит допустим на AWS ?
S3 умеет в Content-Disposition: attachment
источник

LF

Libron FCB in ECMAScript Developers
Ладно, спасибо всем, понял, буду эксперементировать 👌
источник

DM

Daniel Manasov in ECMAScript Developers
Если файлы небольшие, то и блоб как вариант
источник

LF

Libron FCB in ECMAScript Developers
Daniel Manasov
Если файлы небольшие, то и блоб как вариант
👍👍
источник