went
Alexey
ок
Sergey
Anonymous
Anonymous
Alexey
спасибо ребятки) но я если че ещё напишу
Sergey
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
Sergey
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/join
Dmitry
Всем привет!
Подаскжите, почему у меня мог сойти с ума npm? OS: Win10, npm 5.6.0
В новом проекте делаю npm init, создаётся package.json
пишу что-нибудь типа
npm install babel-core —save-dev
npm пишет 'up to date' (ничего не качает, мелькает только надпись 'checking installable status'), добавляет пакет в devDependencies, но директория node_modules не создаётся и по факту ничего не устанавливается
Пакеты глобально не установлены, инфа 100%
Причём глобально npm пакеты устанавливает. node-sass локально у меня, например, не установился, а глобально - пожалуйста.
Кирилл
ребят помогите решить задачу,плиз
Vladimir
ребят помогите решить задачу,плиз
это домашка или тестовое на работу? в обоих случаях лучше покурить мануалы https://learn.javascript.ru/while-for и https://learn.javascript.ru/array
Кирилл
нет просто решаю я просто понимаю что пройтись циклом а как конкретно сделать условие не пойму
Vladimir
тогда вариант - написать неправильное решение, и спросить у сообщества, в чем ошибка
Sergey
Den
Всем привет!
Подаскжите, почему у меня мог сойти с ума npm? OS: Win10, npm 5.6.0
В новом проекте делаю npm init, создаётся package.json
пишу что-нибудь типа
npm install babel-core —save-dev
npm пишет 'up to date' (ничего не качает, мелькает только надпись 'checking installable status'), добавляет пакет в devDependencies, но директория node_modules не создаётся и по факту ничего не устанавливается
Пакеты глобально не установлены, инфа 100%
Причём глобально npm пакеты устанавливает. node-sass локально у меня, например, не установился, а глобально - пожалуйста.
У тебя в родительской директории есть папка node_modules. Создай папку с таким названием в текущей директории
Dmitry
Dmitry
Den
Хмм. Интересное поведение
Дениc
Народ, есть кто по теме visual code шарит? Подскажите, есть ли способ плагины на неё поставить без интернета?
Sergey
Dmitrii
@ZeroBias, нужна еще помощь по mtproto 🙂
Для сохранения авторизационной сессии использую mtproto-storage-fs.
const client = MTProto({ server, tgApi, app })
Все работает ровно до тех пор, пока сессия не протухает. Не знаю, при каких условиях это просиходит, но в какой-то момент надо заново перелогиниваться. Причем, мне показалось, что такое началось после обновления на альфа версию. Раньше вроде не протухала сессия, но мог не заметить.
Так вот в чем фишка. Я не могу отследить протухание сессии. Ибо когда это происходит, то обращения к API тупо ничего не делают. То есть как-будто скрипт просто повисает.
Исключений и ошибок нет.
Получается такая тема:
Я авторизовался, сохранил сессию в сторадже. Работаю с методами. Перезапускаю скрипт, сессия восстанавливается из стораджа. И так дальше, все норм. Дергаю методы телеги, все работает.
И в какой-то момент просто перестают приходить ответы от телеги. Просто тишина. Ждешь минуту, две, сколько угодно - даже по таймаутам не отваливается. И ошибок нет.
И только если я очищаю сторадж, заново авторизуюсь, то опять все начинает работать нормально.
В итоге я просто не понимаю, как отловить протухание токена. Перелогиниваться каждый рестарт скрипта как-то бредово. Да и такое, как понимаю, может произойти даже в ходе работы скрипта.
В общем, либо бага, либо что-то не так делаю.
Спасибо!
🦥Alex Fails
А что за либа?
🦥Alex Fails
О_о; это поверх tdlib?
Dmitrii
хз))
Dmitrii
Это первое что я нашел на ноде для mtproto, что мне показалось простым и адекватным.
В целом telegram-mtproto мне понравилась, мои задачи решает быстро и просто ))
Дима
Всё сами 😶
Дима
@ZeroBias, нужна еще помощь по mtproto 🙂
Для сохранения авторизационной сессии использую mtproto-storage-fs.
const client = MTProto({ server, tgApi, app })
Все работает ровно до тех пор, пока сессия не протухает. Не знаю, при каких условиях это просиходит, но в какой-то момент надо заново перелогиниваться. Причем, мне показалось, что такое началось после обновления на альфа версию. Раньше вроде не протухала сессия, но мог не заметить.
Так вот в чем фишка. Я не могу отследить протухание сессии. Ибо когда это происходит, то обращения к API тупо ничего не делают. То есть как-будто скрипт просто повисает.
Исключений и ошибок нет.
Получается такая тема:
Я авторизовался, сохранил сессию в сторадже. Работаю с методами. Перезапускаю скрипт, сессия восстанавливается из стораджа. И так дальше, все норм. Дергаю методы телеги, все работает.
И в какой-то момент просто перестают приходить ответы от телеги. Просто тишина. Ждешь минуту, две, сколько угодно - даже по таймаутам не отваливается. И ошибок нет.
И только если я очищаю сторадж, заново авторизуюсь, то опять все начинает работать нормально.
В итоге я просто не понимаю, как отловить протухание токена. Перелогиниваться каждый рестарт скрипта как-то бредово. Да и такое, как понимаю, может произойти даже в ходе работы скрипта.
В общем, либо бага, либо что-то не так делаю.
Спасибо!
Короче признаю баг, ищу как решить
Дима
😴
Dmitrii
))
Дима
Я надеялся после нг время будет засесть, но меня чёт ещё больше в проект впаяли 😞
Дима
Плюсы: этот проект на mtproto и время я зря не потрачу, минусы — времени чёт всё равно больше не стало 🌚
Winni
Дима
Дима
После нового года)
🦥Alex Fails
Anonymous
Ilia
Посоны, может кто знает, можно ли из JS получить те данные, которые в network-tab типо: когда началась загрузка и сколько загружалось?
Astr0junk
Astr0junk
@gitrus или какие то подробности нужны?
🦜
Ilia
@gitrus или какие то подробности нужны?
Ну допустим хочу залогировать время когда пиксель/скрипт (от гугла и яндекс метрики) начал/закончил загружаться с момента открытия сайта. Так же можно сделать? 😟
Ilya
профайлер в Google DevTools Вам в помощь
Ilya
Astr0junk
тут разговор видимо о том что надо программно эти данные отправить
Astr0junk
логировать
Ilya
ой, только профиль другой :)
Ilia
Да, программно посылать статистику на сервак для логирования Т_Т
Astr0junk
@gitrus не знаю как каждый скрипт отдельно логировать. есть инструменты для всей загрузки только
Andersol
Есть интересная задачка по копи-пастингу, но для "продвинутых" и умеющих в JS.
Почти все есть в react-starter-kit, но надо собрать все с нуля, без лишнего шлака и с нашими параметрами:
Нужно создать 2 раздельных среды разработки для frontend и backend девелоперов, работающих по одинаковому принципу:
Общее:
- Doсker контейнер с node js 9, yarn, webpack 3
- При каждом запуске контейнера, автоматически устанавливаются пакеты и зависимости через yarn (если новых пакетов нет - идем дальше)
- После каждого изменения js файла в папке /src:
- - eslint проверяет код, если есть ошибки, скрипт останавливается и в консоле отображаются ошибки. Если все ок, идем дальше.
- - обязательно поддержка es6 синтаксиса и tree shaking как для frontend так и для backend.
- - webpack подхватывает изменения, траспайлит, компилирует, билдит, конкатенирует и записывает в /dist/app.min.js
- - создаются sourcemap app.min.js.map и ссылка на этот файл прописывается в app.min.js
Frontend:
- порт приложения 3100
- порт browsersync 3200
- react js SSR. То есть рендер на стороне сервера с последующим подключением react на клиенте.
- структура react компонентов:
- - src/components
- - - Component-hello
- - - - Component-hello.js
- - - - Component-hello.scss
- - - - Component-hello.spec.js
- Используем BEM, но только для обозначения классов.
- при изменении файла /dist/app.min.js или /dist/app.min.сss перезапуск страницы через browsersync.
- из scss каждого модуля генерируем один css файл /dist/app.min.сss и /dist/app.min.сss.map
- - Подключение scss происходит через import в js файле reactjs, вида import './Component-hello.scss';
- - Используем postcss для обработки стилей
- - Используем autoprefixer для postcss, browsers: ['>10%', 'ie >=11', 'ios >=9']
- - если файл меньше 1кб файлы, конвертируем в base64 - url-loader
- - спрайты - webpack-spritesmith или аналоги
- - retina images автоматически генерируются, имя@2x - любой подходящий плагин для webpack 3 или postcss
Backend:
- порт 3500
- node js скрипты обязательно должны иметь поддержку как require, так и import, то есть es6. Для транспайлинга используем babel и webpack3.
- при изменении /dist/app.min.js перезапуск приложения (можно всего контейнера) через webpack hot reload. Можно использовать nodemon
Так же, есть куча интересных задачек на node и reactjs. Можем поработать как помодульно, так и с удовольствием возьмем на постоянку.
@andersol
Astr0junk
@gitrus https://developer.mozilla.org/en-US/docs/Web/API/Resource_Timing_API/Using_the_Resource_Timing_API
Astr0junk
@gitrus performance.getEntries()
Anonymous
ВСе здрасьте! Подскажите ноут что можно на два моника 2,5к раздуплить
Sergey
Andrey
Anonymous
какое то решение наверно с док станцией
Anton
почти любой макбук про должен подойти
Anton
только там конечно захочется 4к вместо 2.5к
Sergey
Anton
а вот с 2x4к тут уже выбирать надо
Anonymous
не не два по 2.5к сойдёт
Anton
в thunderbolt порты втыкаешь там короче )
Sergey
Anton
я вот не знаю
Sergey
Sergey
С закрытой крышкой есть шанс
Anton
15" тоже будет не особо легко
Sergey
Sergey
У меня так дома
Sergey
Sergey
Готов таскать 4-5 кг ноута?
Anonymous
Готов таскать 4-5 кг ноута?
это в офисе, но будет много командировок, а мак я потыкал в магазине, что он какой то няшный для меня
Sergey
нормальный инструмент для работы
Eugene
брал такой недавно MSI_GS43VR_7RE_094RU (Intel_Core_i5_7300HQ_25_GHz16384Mb128Gb_SSDnVidia_GeForce_GTX_1060_6144MbWi_FiCam1401920x1080Windows_10_64_bit.html)
весит пару кило и шустрый, 14"