Dika
Anonymous
Dika
да, тоже думал через switch (true)
Roman
Kto?
Nikita
С одной стороны, в том варианте, что принёс я — меньше вероятность случайно налажать при добавлении новых типов, за счёт того, что функция проще. Всегда видно, что auth позовётся. И проще отследить, что куда идёт в процессе определения типа.
С другой стороны, в том, что было — с первого взгляда лучше понятно, что же всё-таки этот код делает. В том, что принёс я — по взгляду нас саму функцию непонятно вообще, нафига она нужна и что это за странные строки.
Nikita
Я бы всё-таки вынес в функцию, скорее всего, но всё равно неоч.
Nikita
1) ты уверен, что platformInfo.product есть у не-айоси? Исходный код этого не гарантирует, и ты упадёшь в случае, если это не так.
2) свич тут таки вырвиглазен, кмк, и только усложняет понимание.
Nikita
3) деструктуризовать vk.app — годно
Anonymous
Anonymous
Dika
Да, это бы на хаскель переписать.
Nikita
Nikita
И где же там йода стайл?) Просто такая форма записи редко встречается. Но это не является bad practice
йода в сравнении true со всем подряд динамическим, т.е. в перевёрнутом матче. ¯\_(ツ)_/¯
Я и не говорю, что это bad practice, я говорю, что мне кажется, что это сходу читается хуже. Как раз потому, что так редко делают, впрочем, и я согласен, что это вопрос привычки.
Но тут следует помнить, что его будет читать более одного человека.
Nikita
Хотя ок, беглый поиск показал, что так делают более или менее часто.
Nikita
https://github.com/leo/args/blob/master/lib/utils.js#L214-L220
Nikita
https://github.com/snyk/snyk-nuget-plugin/blob/master/lib/index.js#L12
Nikita
Ну и т.д.
Anonymous
Потому что так делают только гуру js 😉
Nikita
Вот не скажи. В одном из двух случаев выше это вообще нафиг не нужно было.
Anonymous
Anonymous
Интерестно, когда js дорастет до такого?
const auth = match (os) {
/Android/ => androidApp(),
/iOS/ => isPad ? ipadApp() : iphoneApp(),
/Windows Phone/ => windowsPhoneApp(),
_ => windowsApp()
}
Anonymous
Этот пропосал мне жутко не нравиться:
https://github.com/tc39/proposal-pattern-matching
Очень вербозный
Anonymous
Помогите решить задачу
Anonymous
Видел в большинстве ботов с оплатой(киви), используют комментарий для проверки оплаты
Anonymous
Как это реализовать на js?
Anonymous
Использую нод телеграм бот апи
Dmitry
ну скинь пример / скрин
Anonymous
Anonymous
Anonymous
Как вариант для каждого юзера выдавать комментарий (один, навсегда)
Anonymous
И только его отслеживать через киви апи
Anonymous
Есть еще идеи?
Dmitry
Я подобное один раз только делал, использовал uuid() и привязывал в базу-mongo к конкретному юзеру
Dmitry
Извини не оч силен в данном вопросе
Anonymous
А я вообще не делал)
Ну вот как вариант это генрировать для него число, после вбивать в тот же json, а потом с этого jsonа смотреть оплату в киви
Anonymous
Пиздец какой то получается
Dmitry
число каждому случайное генерировать думаешь или привязать к нику?
Anonymous
Как варик сделать авторизацию по номеру, и к номеру привязывать
Dmitry
А в телеге ты же можешь номер и не видеть а только ник? или я путаю?
Dmitry
А можешь ссылку на репоз кинуть? посмотреть код хочу
Anonymous
Там же от телеги самой ыункционал поделиться номером
Anonymous
Ноды?
Dmitry
ну вообще этого приложения, если есть в открытом репозитории.
Dmitry
А если человек сидит с телеги и оплачивать киви будет не со своего номера?
Andrew
У меня почему то не работает такой код как во второй строке, но выглядит тоже неплохо, спасибо
Anonymous
core.telegram.org/bots/api
github.com/yagop/node-telegram-bot-api
Anonymous
Anonymous
А с какого номера не важно
Anonymous
Номер нужен только для привязки к акку
Andrew
Anonymous
Anonymous
Закладки?))
Закладки, хайпы, рулетки, накрутка и много всего
Andrew
Anonymous
Andrew
Anonymous
И у тебя не работает деструктуризация?
Andrew
Anonymous
какая версия ноды у тебя?
Dika
Andrew
12 точно есть
Andrew
12.1
Или 12.0.1
Anonymous
v11.3.0 последняя =)
Andrew
Ой
Andrew
Там 11.3
Andrew
Ну значит да 11 точно
Andrew
Я думал 12 почему то
Anonymous
А node -v сделать?
Andrew
Я не у компа щас
Andrew
Ну я устанавливал новую версию неделю назад
Andrew
Там 11 железно есть
Dika
ну может ты lts вместо latest устанавливал
Andrew
Latest
Dika
но емнип в 8 деструктуризация объектов тоже есть
Anonymous
Так если ты не у компа, как ты узнал, что у тебя не работает вторая строка?
Anonymous
Да с 8й
Andrew
Anonymous
Я думаю у него 0.12 =)