Size: a a a

JavaScript.Ninja

2021 October 05

NM

Nikita Markov in JavaScript.Ninja
Ребята, кто может помочь разобраться с deep properties в typescript? хочу добиться хотя бы приближенной типобезопастности, но пока не понимаю как типизировать глубокую вложенность, когда там есть undefined. Я видел вариант с перезгрузкой и кучей NonNullable и мне интересно есть ли решение проще. Пример кода в ссылке на плейграунд. https://www.typescriptlang.org/play?#code/KYOwrgtgBA0sCeBnAouaBvAUFHUBiA8gVALxQBEAZgPbXkA02uAQgIIBKpFARgIYBO5TAF9MmAJYgALsH6VeAY2BQC3AFbAFUqFlxQp8AA7AAXFERT+kgOaM9AbThJUkAHSECAXQD8ZvLSYcRwQUNFc2dh8zZgERMUkZOUVlAEkAZSleGR1AqEczNG5ZTzNVDS04iWlZeSV8Why9CGp+YAAVAAtQAsgi-lyAG2BERE7uqELZXOAARzBeAcQeiD64hJrkqBj+RtwIXkQAazMLKxBrXNbrYAAPE8sbabmFpfMH88qFahALN6zTKDpTLZMi6XAARjMYL0OAMxjM5BkNykDFyeho1ChaJhOFm80WZnBdhxMOarTGIDMACZiSTcEMRhSzAAGbE4UR6USiTBfH7aa5SAAiwGAhgACvxqMZ+AZSLkADxpKC3GQgAAmiEBGX+tJhADllcjQBqJr1ZLq9GLwYbVSanKFIBbcGKqTbjZrDghqJQoHrvnqwAMBrxuEN5WVNFIAHz2K2eKNsqAACgs-zMaXoUHEarMesznvgkKgVvzCCpZhdAEpSupI7HwZ5Y1TPKQo7sca0pGB+CA-jJ7NmfK57AWG95hwXm7lubzfohqBBlGQBcLRRKpbIDCngcBM0TYCEXBB3ERM+Q8S9yJWxEA
источник

IK

Illya Klymov in JavaScript.Ninja
Нет, решения проще нету
источник

IK

Illya Klymov in JavaScript.Ninja
Только миллиард перегрузок для разной глубины аргументов
источник

M

Maksym in JavaScript.Ninja
Мне надо сделать проверку, если файл качаеться то надо метод download через сылку юзать, а если например открываеться файл типо(pdf,img) то надо юзать window.open , как мне знать какой файл грузиться а какой открываеться в окне?
источник

DZ

D Z in JavaScript.Ninja
У файла есть mimeType
источник

NM

Nikita Markov in JavaScript.Ninja
Спасибо, пример в ссылке искусственный, но близкий к реальности. В проекте есть два места где это требуется, в одном перегрузка возможна (глубина 2), во втором нет т.к. и глубина около 7 и при расширении она может меняться.
источник

M

Maksym in JavaScript.Ninja
Да, но мне что проверять на кажд. тип?)
источник

M

Maksym in JavaScript.Ninja
я не знаю какой тип делает загрузку а какой откр.
источник

DZ

D Z in JavaScript.Ninja
Я правильно понял, что по принципу единственной ответственности рекомендуется продублировать код, вместо лапши с ифами?
источник

DZ

D Z in JavaScript.Ninja
Делаете вы, а не тип
источник

DZ

D Z in JavaScript.Ninja
Не понимаю в чем проблема
источник

M

Maksym in JavaScript.Ninja
Ну там я 1 проблема, я просто бзал window.open, и он сам определял скачать или откр. но если через open скачать , то имя то что задал вторим аргументом, то имя берет с url а не то что указал я в open(url, name)
источник

IK

Illya Klymov in JavaScript.Ninja
Что поделать, тайпскрипт это про ограничения
источник

DZ

D Z in JavaScript.Ninja
Обычно если нужно скачать файл, то используетс download для всего. Если же нужно отрисовать, то это делается внутри приложения с помощью тега img. Я понял, что вы хотите, здесь могу порекомендовать открыть на мдн список популярных маймтайпов и проверить как они себя ведут при открытии с помощью window.open в разных браузерах
источник

M

Maksym in JavaScript.Ninja
Уже почитал, спс) а я могу задать в blov кастомн. тип файла , чтоб он сохранил например мне file.sqlTu
источник

OJ

Oleg Junior in JavaScript.Ninja
а есть ли вариант как-то определить с помощью CSS мобильный firefox? может медиа-запрос есть какой-то специфический который работает только в Firefox на сенсорных экранах? задача такая что мне для Firefox mobile нужно персональные стили прописать
источник

I

Ivan in JavaScript.Ninja
Думаю нужно через js делать
источник

DB

Danil Bezgin in JavaScript.Ninja
источник

ДН

Даулет Нуржанов... in JavaScript.Ninja
https://www.apple.com/ru/ipad-pro/

с помощью чего такие сайты делаются 🤔
есть какой-то популярынй фреймворк для этого?
источник

АЗ

Андрей Звёздочка... in JavaScript.Ninja
Что именно тебя интересует?
источник