Dika
да, тоже думал через switch (true)
Kto?
А где ты auth обьявил?
Nikita
С одной стороны, в том варианте, что принёс я — меньше вероятность случайно налажать при добавлении новых типов, за счёт того, что функция проще. Всегда видно, что auth позовётся. И проще отследить, что куда идёт в процессе определения типа. С другой стороны, в том, что было — с первого взгляда лучше понятно, что же всё-таки этот код делает. В том, что принёс я — по взгляду нас саму функцию непонятно вообще, нафига она нужна и что это за странные строки.
Anonymous
А где ты auth обьявил?
Нигде, в исходном примере он так же не объявлен
Nikita
Я бы всё-таки вынес в функцию, скорее всего, но всё равно неоч.
Nikita
1) ты уверен, что platformInfo.product есть у не-айоси? Исходный код этого не гарантирует, и ты упадёшь в случае, если это не так. 2) свич тут таки вырвиглазен, кмк, и только усложняет понимание.
Nikita
3) деструктуризовать vk.app — годно
Anonymous
1) ты уверен, что platformInfo.product есть у не-айоси? Исходный код этого не гарантирует, и ты упадёшь в случае, если это не так. 2) свич тут таки вырвиглазен, кмк, и только усложняет понимание.
И да что бы ты понимал матчинг во многих языках (например Rust) используется чаще чем if/else в несколько раз. Так что это дело привычки
Dika
Да, это бы на хаскель переписать.
Anonymous
Меня не матчинг смущает, меня йода-стайл смущает.
И где же там йода стайл?) Просто такая форма записи редко встречается. Но это не является bad practice
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
сорри, node.js >= 10
У меня последний
Anonymous
И у тебя не работает деструктуризация?
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й
Anonymous
Я думаю у него 0.12 =)