📮Тест на вход придёт в личку 💥Без никнейма не впустим Правила: https://t.me/sveltejs/764 Доки: https://svelte.dev/docs Паблик: @sveltejs_public Вакансии: @sveltejs_jobs VK: https://vk.com/sveltejs_ru Админы: @stalkerg, @misharodshtein
для меня блоки 1 и 2 выглядят идентично))
Читать полностью…Спасибо, да, я тоже находил эту либу. Но у bowser преимущество в том что он отдает
platform: {
type: "desktop"
},
И мне очень просто определять мобилка/десктоп
юзер агент можно заранее еще в лоад парсить
Читать полностью…Для определения iPhone год назад использовал bowser. https://www.npmjs.com/package/bowser
Читать полностью…Не забывайте, что сейчас бывают ноутбуки и Windows/Linux планшеты с touchscreen. Может лучше проверять userAgent? https://developer.mozilla.org/en-US/docs/Web/API/Navigator/userAgent
Читать полностью…Ну так через контейнер. Навешай на него событие и передай компоненту параметр.
Читать полностью…или важно чтоб фича эта была?
Читать полностью…Класс! Спасибо, а то я уже думал пакет какой-нибудь ставить для определения мобилка/десктоп.
Пока правда не понимаю как мне определить на этапе рендера touch device или нет. Потому как мне нужно же передать или не передавать multiple в компонент заранее.
Спасибо Никита. После 5 часов гугления и попыток решить проблему, она решилась блин простым убиранием multiple... Это конечно мега жестко.
Причем также заработал корректно выбор и из галереи и с Гугл диска... 🌚
Теперь думаю как определять мобилки и оставлять мультивыбор на PC/Mac и выключать на мобилках
Ну это еще не самая страшная проблема. Некоторые мобильные ОС открывают сразу галерею для выбора файла, а не просто файловый менеджер. И аппка не видит файлов выбраных в галерее. Видит только их менеджера. Это прям очень плохой пользовательский опыт. Хотелось бы найти решение
Читать полностью…Спасибо. Я читал эту доку. Может что пропустил, но не могу там найти решение своей проблемы
Читать полностью…Ребят вопрос может не совсем про Svelte, но я уже всю голову сломал, гуглю третий час и не нахожу решения. У меня в приложении есть обычный <input type="file" ... > и он работает как нужно в браузере. Я могу выбрать один или несколько файлов, получить объект FileList и спокойно обработать/загрузить файлы. Но когда тестирую приложение на Android устройстве (iOS не пробовал) появляется нативный диалог выбора файла. И он работает только если я выбираю 1 файл и только из браузера файлов. Если я выбираю 2 или более файла или выбираю файл используя Галерею или Google Drive я не получаю списка файлов вообще.
Подскажите пожалуйста решение если сталкивались
Было бы здорово сделать так
<SuperForm
{всякие пропсы}><div class="hidden md:block">
<Carousel>
{snippet}
</Carousel>
</div><div class="md:hidden block">
<div class="flex w-full space-x-6">
<
{snippet}
</div>
</div>/SuperForm
>
Но тогда в самом сниппете будет ошибка, потому что form будет undefined, ведь мы задаем его внутри Superform
Если я засуну элементы в суперформу, а суперформу в сниппет, то не будет работать карусель, потому что для нее один элемент это одна страница.
Два дива - две страницы, а суперформа это элемент <form> внутри которого уже и находятся нужные мне <div> с инпутами
export let data
- это не 5ый свелт
ua parser на самом деле тоже это делает там правда десктоп это undefined девайс тайп)
Читать полностью…Нашел еще ультралегкий форк от Atlassian https://www.npmjs.com/package/bowser-ultralight
Читать полностью…я https://www.npmjs.com/package/ua-parser-js
юзал
Пакеты/либы в основном на этом и основаны. Парсят UserAgent. Так что да, наверное так надежнее
Читать полностью…Так событие то триггерится когда юзер кликает/тапает. А мне нужно уже при загрузке страницы знать передавать multiple или нет
Читать полностью…Ну удобно когда пачкой можно файлы загрузить. Хотя бы на десктопах хочу оставить
Читать полностью…как вариант просто запретить мултип для всех
Читать полностью…Недавно делал эту задачу с кастомным выпадающим списком. Советую использовать определение при нажатии на компонент, а нажатие определять с помощью on:pointerdown={onPointer
}
UPD: то есть смысл в том, чтобы делать это только по клику, а не всегда. Удобно.
Чтобы лучше работало, для инпута советую сделать контейнер
https://caniuse.com/input-file-multiple выбор нескольких файлов в мобильных браузерах не прям хорошо поддерживается
Читать полностью…хм, вообще если честно, сколько сайтов перелазил, но нигде не видел, чтобы был выбор нескольких файлов с мобилки, всегда прикреплялся только один даже если была возможность выбрать несколько. Возможно это не решаемо для мобилок
Читать полностью…https://developer.mozilla.org/ru/docs/Web/API/File_API/Using_files_from_web_applications
тут вроде все есть
ну так {@render Fields(form)}
я вижу повторяющийся код (содержимое карусели) - решение вынести в снипет. Или я не так понимают твою проблему?
Читать полностью…ну так передай этот форм в снипет
Читать полностью…Потому что контролы должны быть внутри компонента Superform, они оттуда берут let:form
Читать полностью…