TGViewer
Deep Digital Deep Digital @deepdigital · 1.06K subscribers
Post #7 2.22K
Стрелочные функции в классах JavaScript

Если вы разрабатываете на React или просто «пишете» на ECMAScript 6 и часто пользуетесь классами, то вам наверняка приходится бороться за сохранность контекста при вызове функций.

По нашим наблюдениям, эту проблему, как правило, решают с помощью bind:

this.doSomething.bind(this)


Мало кто знает, что можно избавиться от «кучи» bind-ов:
Если подключить к проекту babel-плагин transform-class-properties, то станет возможным использование в классах стрелочных функций, которые не теряют контекст экземпляра класса:

 class Test extends Component { 
doSomething = () => {
this.setState({ done: true });
}
render() {
return <div onClick={this.doSomething}>Do it</div>
}
}


Кроме того, у плагина есть ещё несколько классных возможностей (например, установка дефолтных свойств экземпляра без конструктора) с которыми можно ознакомиться перейдя по прикрепленной ссылке.
More from @deepdigital
  1. May 19, 2026Как расти в непростом рынке, масштабировать группу компаний и не терять фокус на клиентах?…
  2. Dec 26, 2025⚡️Подвели итоги 2025 года Chulakov Group Записали подкаст с Олегом Чулаковым — основателем…
  3. Dec 8, 2025Победы на Tagline Awards 2025 🏆 Снова громко напомнили, зачем делаем дизайн — чтобы созда…
  4. Jun 9, 2025Chulakov ⨉ ИТМО 💥 Мы снова в одном из крупнейших IT-вузов России. Альберт Рыбалко, руково…
  5. Jun 6, 2025🏆 Chulakov — № 1 в дизайне по всем рейтингам Безоговорочный лидер по версии крупнейших ан…
  6. May 6, 2025🙌 Вспоминаем, как насыщенно провели время на IT-конференции Merge Были рады стать партнер…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →