Category Archives: Programming
Сервис принятия платежей
Посоветовали сервис процессинга пластиковых карт https://www.2checkout.com/. Сам не пробовал, но обещали счастье :)
Service Worker
Новый свежий тип воркеров. Полностью контролирует сетевые соединения на javascript-уровне. Описание на MDN — https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Social_API/Service_worker_API_reference https://www.google.com/events/io/io14videos/41ed1ef6-d6b9-e311-b297-00155d5066d7
phridge — phantomjs bridge к node.js для высокой скорости
Основная фишка — в том, что между запросами PhantomJs не убивается, а используется повторно. Учитывая, что запуск процесса занимает примерно секунду, производительность должна сильно вырасти. https://github.com/peerigon/phridge/blob/master/README.md Ну а нужно это для генерации на бэкенде страниц для поисковиков для одностраничных приложений.
Тестирование AngularJS с помощью Protractor
http://teamgaslight.com/blog/getting-started-with-protractor-and-page-objects-for-angularjs-e2e-testing Protractor — замена karma.js, который замена testacular
PageSpeed для локальных ресурсов, используя ngrok
http://www.jamescryer.com/2014/06/12/grunt-pagespeed-and-ngrok-locally-testing/ https://ngrok.com/
Как сделать свой chrome extension
manifest.json должен выглядеть примерно так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
{ "manifest_version": 2, "name": "Jira print extension", "description": "This extension is to print tasks in Jira", "version": "1.0", "background": { "scripts": ["background.js"] }, "permissions": [ "tabs", "https://*/*", "http://*/*" ], "browser_action": { "default_icon": "icon.png", "default_popup": "popup.html" }, "content_scripts": [ { "matches": ["http://*/*", "https://*/*"], "js": ["libs/jquery.js", "content.js"] } ] } |
При этом: background.js крутится всегда и один для всего браузера, умеет только слать сообщения на разные слои и слушать их. content.js (всё, что указано в content_scripts) имеет доступ к DOM и может слушать сообщения от background.js. popup.html открывается при нажатии на кнопку расширения в панельке, обычный html, должен содержать …
AngularJS: сервис компиляции (интерполяции) шаблонов
Нужно было сделать объектов через шаблоны и отдавать дальше, не в AngularJS. Сделал для этого службу
Лоадер страницы на javascript
http://github.hubspot.com/pace/
Как работать с bower
Тут первые 15 мнут рассказывается про то, как внедрить в проект bower http://youtu.be/1rz334A8U7o
AngularJS: таймеры и одностраничные приложения
Иногда бывает нужно делать какие-то действия по таймеру, иногда даже постоянно. При переходе на экран в соответствующем контроллере стартует функционал, связанный с периодичными действиями (таймауты или интервалы, которые, конечно же, лучше никогда не использовать). При уходе на другой экран надо не забыть очистить таймеры, чтобы не было утечек памяти и ненужных запросов к серверам или …