• Как указать this правильно?

    @grinat
    С использованием лямбд/стрелочных функций это не имеет никакого смысла. Тут проблема в том что когда-то давно контекст терялся, щас нет этой проблемы, да и если использовать babel, то он тоже самое делает, правда стрелочные функции переделывает в обычные, для совместимости с ie, в которых и так половина сайтов не открывается, и обычно не из-за лябмд, а из-за сертификата либо косяков в верстке.
    Ответ написан
    Комментировать
  • Почему сервис angular кешируется?

    @grinat
    Он у тебя не делает копию объекта, а получает ссылку на него. В js в таком случае как ты пишешь нет клонирования, там просто проставляется ссылка на исходный объект.
    Ответ написан
  • Как использовать fs в electron?

    @grinat
    Так же как и обычно в ноде. Там два модуля, один main, он под node(в нем стартует new BrowserWindow), другой renderer, это то что отображается пользователю в хромиуме, в main использовать fs, в renderer обычная html страница, общаться друг с другом они могут через евенты. Через webpack там есть смысл только собирать то что будет отображаться в renderer.
    Ответ написан
    Комментировать
  • Как открыть ссылку или pdf в web/phpstorm?

    @grinat
    Ну в .md file можно вставить картинку. Если использовать rendertron https://render-tron.appspot.com/ то можно вставлять страницы в виде картинок:
    ![](https://render-tron.appspot.com/screenshot/https://toster.ru/q/619334)


    Итог:
    5ca5a4228fd05508545246.png

    А вообще по идеи плагины должны быть, которые позволяют делать превью редактиремой html страницы прямо в сторме, так же как md файлов, вот через них. Если вставить в html iframe и input с адресом, получится полноценный браузер.
    Ответ написан
    3 комментария
  • Почему минимальный размер приложения такой большой?

    @grinat
    В гоу по моему 2мб мин размер, в приложении скомпилированном андроид студией, где размер таки важен, минимум 3.7мб выходит. Так шо 120кб в наши времена это хороший результат для хело ворда.
    Ответ написан
    3 комментария
  • Задача коммивояжера. Как оптимизировать маршрут по забору груза c контрольных точек?

    @grinat
    Osrm полностью бесплатное, у гугла есть условное платное(очень дешевое), есть еще куча аналогов с разными ценами. Они все в основном чисто маршрут считают, то есть с распределением груза самому придется разбираться. Делать самому построение маршрута по реальным дорогам, как тут народ советует, это анриал, потому что например единственная бесплатная база, откуда можно взять данные, это osm и она весить полгига по моему для всего мира, есть правда сборки для регионов, но там нужны нехилые ресурсы сервера и куча времени чтобы с их форматом разбираться. Для osrm кстати данные готовить то еще дело, можешь тупо с моего репо по рф забрать: https://gitlab.com/grinat/osrm-prepared-russia-data потому что если сервер osrm использовать, то он регулярно лежит.
    И если эти 200-300 точек на яндекс карте отображать, это очень плохое решение, яндекс с кластерами такое число не вывозит на слабом пк, а если в чистую выводить, то и на норм пк может не вывести, бери mapbox, либо leaflet. Яндекс карты и всех их гис сервисы это днище полное, причем по заоблачным ценам.
    Ответ написан
    Комментировать
  • Есть ли смысл писать сервер для телеграм бота?

    @grinat
    Писать в любом случае придется, в node-telegram-bot-api просто обертки над их api, чтобы тебе не писать примерно тоже самое, но уже с использованием request/axios/etc. Также если повезет и их api обновиться, то публичные методы в node-telegram-bot-api останутся без изменений, если будет кастомное решение, то придется все перехерачивать.
    Ответ написан
    Комментировать
  • Как подключить Cordova к VPN?

    @grinat
    window.cordrova.VPNManager.connect({тут опции: https://github.com/aquto/cordova-plugin-vpn/blob/c...
    Ответ написан
    Комментировать
  • Удалось подружить Webpack 4 + Stylus ???

    @grinat
    А шо пример с https://github.com/shama/stylus-loader не работает? Какая ошибка?

    Вот рабочий пример:
    https://github.com/vuetifyjs/vuetify/blob/bb3ef969...
    https://github.com/vuetifyjs/vuetify/blob/bb3ef969...
    Ответ написан
    Комментировать
  • Что использовать в этой ситуации?

    @grinat
    Обычно null приходит если не установлено follow location, проставь и смотри заново. Еще в курле есть параметр для деабага, там будет вся подробная инфа о том как идет соединение.
    Ответ написан
  • Можно ли начать разработку под iPhone без всяких трудностей с активацией аккаунта?

    @grinat
    Можно начать не имея даже айфона и регистрации где либо, главное чтобы мак ос была, на нее скачиваешь xcode и усе, там эмулятор есть(правда урезанный, камеры например нет). Деньги потребуются если решишь в маркет выложить, если только себе, то через xcode ставится, достачтоно iphone подключить к компу(если мак ос будет в виртуалке, то с этим могут быть проблемы, не на каждом оборудовании корректно usb пробрасывается из хоста в гостевую машину).
    Ответ написан
    1 комментарий
  • Как создать очередность выполнения функций в js?

    @grinat
    async/await а все модули всплывашек они давно уже по моему на промисах, да и обернуть в промис дело пары секунд
    Ответ написан
    Комментировать
  • Как Вы управляете проектами с удаленными заказчиками?

    @grinat
    И итоге делал так, заказчик присылает тз, его обстоятельно обсуждаем во всех подробностях, назначаем сроки/стоимость, я делаю, показываю результат, он присылает замечания/всплывшие косяки, я исправляю если оно в рамках тз. Обсуждение по email исключительно. Никаких суси-пуси, часовых скайпов ни о чем и т.п., ему нужен продукт, тебе деньги, если он хочет общения, пускай идет к жене/любовнице, если его что-то беспокоит, то может идти куда подальше. Если будешь каждому опу подтирать, то быстро сгоришь играя одновременно в программиста/аналитика/менеджера, так что выбирай что-то одно. Плюс имей в виду, что база нарабатывается и там потом одни и теже люди будут к тебе обращаться, поэтому если ты им сопли постоянно подтирал, то придется и дальше этим заниматься, а если общение четко и только по делу, то и далее оно будет таким. Если будут какие-то споры, а заказчики разные, и они 100% будут, то беседу по скайпу в качестве доказательств своей правоты не приложишь. Трело тогда не было, шел просто по тз, и зачеркивал выполненные пункты.
    Ответ написан
    Комментировать
  • Отслеживание действий в Яндекс.Браузере. Реально ли сохранить текущую страницу?

    @grinat
    https://developer.chrome.com/extensions/content_sc... если вкратце то достаточно просто в манифесте указать когда и куда можно включить скрипт, в нем же можно всю логику положить, которая будет собирать html и куда-то отправлять. Чтобы ajax запросы из этого скипта можно было отсылать, надо в манифесте указать в пермишенах оригин хоста, на который будут идти запросы.
    Ответ написан
    Комментировать
  • Как правильно использовать middleware в Laravel?

    @grinat
    Нет. Хз в ларавел, но если там mvc, то данные запроса обратываются в контроллере, а middlaware там будет тем что стоит перед твоей обработкой в контролере. То есть например авторизация, мы в middlaware проверяем авторизован ли пользователь, если да, то передаем данные дальше на обработку в контролер. На практике их есть смысл заюзать если например пришел аналитик и сказал что если мы обрабатываем овощ, то надо выводить человеку сообщение: ты помидор, а у тебя куча контролер: картофанконтрлер, капустаконтролер, луккнотролер и т.п., и ты вместо того чтобы в них все вставлять сообщение ты помидор, добавляешь middlaware и в нем смотришь овощ ли это, и если да, то выводишь сообщение ты помидор.
    Ответ написан
    Комментировать
  • Как передать данные из БД в UI?

    @grinat
    Есть flux архитектура, которая этот вопрос решает. Она для web'а, но я встречал много статей и решений об ее использовании в юнити, советую глянуть, вероятно это то что ты ищешь, только там наверное с webapi(ajax, rest, comet), в твоем случае в его роли будет выступать бд, если там используется слово компонент, то это то вероятно называется виджет в юнити.
    Ответ написан
    Комментировать
  • Какова реальная сфера применения MongoDb?

    @grinat
    Она на рест ложиться хорошо, но главная фича это схема лесс и горизонтальное масштабирование из коробки. Там не нужны миграции, и можно как угодно изголятся с данными, вкупе с нетипизированным языком навроде js, это убойное сочетание, которое буквально за дни позволяет запустить полноценный прототип продукта. Nodejs+express+mongo это ядерная бомба, которыми стартап может взорвать рынок и легко пережить большую нагрузку в случае успеха. А в кровавом интерпрайзе я однажды абстракциями которые накидал за пару часов, с помощью тройки указанной выше, временно закрыл большую дырень в продукте(там по сути нужны были тупые crud'ы но для овердохриллион сущностей с кучей атрибутов), пока бакэнд не нагнал запоздание в сроках.
    Ответ написан
    1 комментарий
  • Как сделать замену переменной адресом локального файла через Drag&Drop?

    @grinat
    По локальному адресу ты ничего не получишь из-за соображений безопасности. Там обычный file input надо делать, пользователь перетаскивает на него файл, он вгружается, получаем блоб и далее уже производим с ним нужные манипуляции.
    Ответ написан
  • Подключение БД.......?

    @grinat
    Надо в этом классе заменить параметры подключения на свои, т.е. заменить private static $_db_address на private static $_db_address = 'localhost' и т.п. вызывать везде как:
    $connect = CConnectionSingleton::getInstanse();
    $users = $connect->sql2data('SELECT * FROM users');
    Ответ написан
    Комментировать
  • TypeError: Font is not a constructor?

    @grinat
    Там жеж написано, что это не конструктор. Вообще если это канвас, то шрифт меняется как ctx.font, региструется так: https://github.com/Automattic/node-canvas/#registerfont
    Ответ написан
    Комментировать