🦊 Angular Fox 🚀 — русскогорящие новости сообщества
3.97K subscribers
1.2K photos
7 videos
1.05K links
Как костыль на реактивно-лисьей тяге 🔥🦊

Нравится канал? Подпишись на меня!
👉 twitter.com/thekiba_ru
💖 twitter.com/thekiba_io
medium.com/@thekiba
github.com/thekiba

Чаты @angular_ru @angular_jobs
Download Telegram
🦄 ng-content: The hidden docs

Освновная задача ng-content — это предоставить возможность делать максимально декларативные компоненты, которые сильно упростят ваш код.

Ответьте для себя на вопрос: У меня есть многоуровневые компоненты?
Если ответ да, то обязательно прочитайте эту статью.

👉 https://medium.com/p/96a29d70d11b
🙀 Очередное обновление Angular

На самом деле изменений очень много, но есть ряд ключевых. Просто посмотрите:
— имплементировали поддержку инкрементальной компиляции TypeScript ⚡️
— собраный бандл с Ivy теперь весит всего 34 байта 🙀

Разумеется, речь про размер для Hello world, но все равно это очень круто! 😻

Очень ждем, когда это добавят в официальный релиз 🥳👏👏👏

👉 https://github.com/angular/angular/blob/master/CHANGELOG.md
Bazel updates for March

Ежемесячное обновление Bazel. Он становится все более дружелюбным к пользователю. Очень ждем, когда его использование станет совсем простым.

⚡️ Faster builds
👨🏻‍🔧 Better support in Angular CLI
🧪 Bazel examples
Tips and tricks

👉 https://telegra.ph/Bazel-updates-for-March-04-01
📣🌟 Angular Hot Tip

Думаете, что ngOnDestroy сработает всегда? Вы можете удивиться, но он не вызовется при обновлении страницы.

🙀 Как это исправить? Вот так! 😻
HostListener("window:beforeunload")


👉 https://wesleygrimes.com/angular/2019/03/29/making-upgrades-to-angular-ngondestroy.html
📣🌟 Angular Hot Tip

Думаете, что ngOnDestroy срабатывает всегда после ngOnInit? Вы можете удивиться, но ngOnInit может никогда не вызваться!

🙀 Как это исправить?
Всегда делайте проверки в ngOnDestroy! 😻

👉 https://www.bennadel.com/blog/3356-ngoninit-may-not-get-called-before-ngondestroy-is-called-in-angular-4-4-6.htm
🙌 Небольшой инсайд из Angular, о котором невозможно молчать

В скором времени Angular CLI будет поддерживать WebWorkers прямо из коробки! Мы ждали этого достаточно долго, и уже почти дождались.

👉 https://github.com/angular/angular-cli/pull/13700
👩‍💻 Сейчас немного размышлял на тему того, когда твоему пул реквесту вместо апрува дают кучу запросов на правки. Ты их исправляешь, но тебе приходят новые. И так до бесконечности...

Во-первых, успокойся. Не нужно принимать это близко к сердцу. И чтобы аргументировать это, давай рассмотрим несколько типичных ситуаций:

Ты пишешь реально плохой код
На тебя кто-то держит злобу
Кто-то страдает перфекционизмом

🦊 А теперь по порядку.

🤷🏼‍♀️ Все пишут плохой код. Серьёзно. Но если ты считаешь, что твой код действительно плох, то постоянно задавай себе такие вопросы:
— Что делает эти строчки действительно плохими?
— А просто ли их понимать?
— Как я мог бы это улучшить?
— Почему предлагаемые изменения делают код лучше?

Обязательно почитай замечательные книги: Чистый код, Программист прагматик и другие: https://t.me/angular_fox/6. В них ты найдёшь очень много ответов на свои вопросы.

🥰 И да, навряд ли кто-то держит на тебя злобу. Скорее всего проблема в чём-то другом, например нехватке времени или банальной лени. Попробуй наладить общий язык со своим ревьювером.

👩🏼‍🎨 А если кто-то страдает перфекционизмом, то не бойся показать свою точку зрения. Тогда вы обязательно найдете замечательное решение, которое будет в разы лучше. Или окажется, что текущее решение уже оптимальное.

И всегда помни, что Ты отличный разработчик! Поэтому подними свои лапки 🐾 и пойдём попьём кофе ☕️, чай 🍵 или какао 🍫
🦄 Имплементация Edit-in-Place в Angular

Создание простой директивы для динамического отображения input над исходным текстом для его редактирования.

👉 https://netbasal.com/4fd92c4dfc70
🦄 Динамические плагины для Angular

Создание и загрузка динамических плагинов с поддержкой AOT для Angular. Тот самый случай, когда “Если очень хочется, то можно 🐥.

👉 https://blog.angularindepth.com/aed8979faba5
🦄 Build Angular Like An Architect

Если вам интересно как Angular CLI работает изнутри, то обязательно попробуйте написать свой билдер с помощью обновленного Architect API.

👉 https://dev.to/steveblue/build-angular-like-an-architect-part-1-3ph2
This media is not supported in your browser
VIEW IN TELEGRAM
🦊 Самый популярный вопрос этой недели: Какие команды ты использовал во время live coding? 🙀

👩‍💻 Ответ: Это называется Refactoring, и он уже встроен во все современные IDE. Полный список команд можно посмотреть в разделе Refactoring или в документации.

👉 WebStorm: https://www.jetbrains.com/help/webstorm/refactoring-source-code.html
👉 VSCode: https://code.visualstudio.com/docs/editor/refactoring
🐥 Action Creators в NGRX

Использование Action Creators в NGRX, которые немножечко сократят ваш бойлерплейт в приложении. Используйте с осторожностью, так как в следующих версиях могут быть breaking changes.

👉 https://blog.angularindepth.com/d396960e46da
👩‍💻 Очень часто слышу фразу “Мне не верится, что я заслуживаю зарплату, которую получаю”, и решил немного поразмышлять на эту тему. Причём самое интересное, что ее произносят не только начинающие, но и достаточно опытные разработчики.

И прежде чем это обсудить, давай определимся с тем, что именно тебя беспокоит:
Зарплата больше, чем ожидаешь
Зарплата меньше, чем хочется

🦊 А теперь по порядку.

😬 Допустим, ты получаешь зарплату незаслуженно больше. Но смотри:
— Ты делаешь всю необходимую работу
— Твоя компания очень ценит это и зарабатывает на этом деньги
— А часть денег выплачивает тебе

И если что-то было бы не так, то тебе сразу бы об этом сказали. Но ведь этого не говорят, верно? Значит просто перестань об этом думать, все в порядке. Ты большой молодец! 👏

🙀 Но что если тебе это сказали или если хочется зарплату больше? В первую очередь успокойся, и задай себе вопрос: «А делаю ли я достаточно, чтобы зарплата была больше? Что я могу сделать полезного для компании в которой работаю?».

Поинтересуйся, что делают твои более старшие коллеги. И попроси их помочь составить план собственного развития. В идеальном виде, он должен состоять из нескольких списков:
— Что я уже умею
— Что я хотел бы сделать
— Что необходимо для этого изучить

После этого обязательно отсортируй их в порядке уменьшения интереса: самое интересное наверху, самое скучное внизу. Составил? Отлично! Теперь просто сопоставь список с тем, что нужно компании, и ты получишь идеальный план для собственного развития и карьерного роста! 🥳 А если не знаешь что нужно компании, то ты точно знаешь у кого можно спросить: у своего друга коллеги.

🐥 Думаю, ты понимаешь, что без навыков и опыта никуда, но есть еще один очень важный момент. Зарплату платят не за твои навыки, а за то что и как ты делаешь. Ведь вовремя выполненные обязанности как раз и отражают размер твоей зарплаты.

😻 И если спустя пол года ты внезапно удивишься, что твоя зарплата выросла еще больше, то знай: ты на верном пути, ты ценен и ты замечателен! Поэтому подними свои лапки 🐾 и пойдём вместе попьём кофе ☕️, чай 🍵 или какао 🍫
🦄 Создание переиспользуемых директив

Еще один замечательный пример использования директив. Ведь в отличии от компонентов, они позволяют безболезненно переиспользовать уже реализованную логику. 🐥

👉 https://netbasal.com/9908c2f04f5
🦄 Самый быстрый способ кэширования с помощью RxJS

Кэширование Http запросов с помощью простых операторов publishReplay() и refCount().

👉 https://blog.angularindepth.com/444a198ed6a6
🦊 Если сегодня вы почувствовали усталость, то возможно эта новость вас порадует 😇

🐾 В мае нас ждут 13 выходных дней и всего лишь 18 рабочих! 🥳 Это почти в х1.7 раза больше, чем в обычно! 🙆🏼‍♀️
🙆🏼‍♀️ А вы знали, что 32.4% экспертов на Stack Overflow выбирают Angular в качестве основного веб фреймворка?

Это на 0.1% больше, чем React 🦊

👉 https://insights.stackoverflow.com/survey/2019
🙌 Играемся с состояниями в Angular

Достаточно необычное использование специфики работы Components и projectable nodes, которые делают код более декларативным. Обязательно поэкспериментируйте с этим 🙋🏼‍♀️

👉 https://blog.angularindepth.com/a48932d2fa27