Skip to Content
Vueを学ぶ
book

Vueを学ぶ

by Maya Shavin
March 2025
Intermediate to advanced
350 pages
5h 20m
Japanese
O'Reilly Media, Inc.
Content preview from Vueを学ぶ

第5章. コンポジションAPI

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

前の章では、古典的なOptions APIを使ってVueコンポーネントを構成する方法を学んだ。Vue 2以降、Vueコンポーネントを構成するための最も一般的なAPIであるにもかかわらず、Options APIを使用すると、不必要にコードが複雑になったり、大規模なコンポーネントコードが読めなくなったり、コンポーネント間のロジックが再利用できなくなったりする可能性がある。このようなユースケースのために、この章ではVueコンポーネントを構成するための別のアプローチ、Composition APIを紹介する。

この章では、Vueで機能的なステートフル要素を作成するために、さまざまなコンポジションフックを探求する。また、オプションAPIとコンポジションAPIを組み合わせることで、より優れたリアクティブ制御を実現し、アプリケーションのために再利用可能な独自のコンポーザブルを構成する方法を学ぶ。

Composition APIでコンポーネントをセットアップする

Vue では、Options API を使ってコンポーネントを構成するのが一般的だ。しかし、多くの場合、ミキシンのようにデータやメソッドの重複を気にせずにコンポーネントロジックの一部を再利用したい。1のようにデータやメソッドの重複を気にせずにコンポーネントのロジックの一部を再利用したい場合や、より読みやすく整理されたコンポーネントを使いたい場合が多い。Composition APIは、そのような場面で役に立つ 。

Vue 3.0で導入されたComposition APIは、setup() フック("setup")や <script setup> タグを利用して、ステートフルなコンポーネントとリアクティブなコンポーネントを合成する代替方法を提供する。setup() フックは、コンポーネントのオプション・オブジェクトの一部で、コンポーネントのインスタンスを初期化して作成する前に一度だけ実行される(beforeCreate() フックの前)。

Composition API関数やComposable(「再利用可能なComposableの作成」)は、このフックまたは等価性構文<script setup> タグ内でのみ使用できる。この組み合わせは、ステートフルな機能コンポーネントを作成し、コンポーネントのリアクティブなステートとメソッドの定義、および他のライフサイクルフック(「ライフサイクルフックの使用」を参照)の初期化を、よりわかりやすいコード可読性で行うための優れた場所を提供する。

コンポーネントのリアクティブ・データを処理するためのref()reactive() 関数から始めて、APIのパワーを探ってみよう。

ref()とreactive()でデータを扱う

第2章では、コンポーネントのデータを初期化するためのOptions APIのdata() 関数プロパティについて学んだ(「データ・プロパティによるローカル状態の作成」)data() から返されるオブジェクトのデータ・プロパティはすべてリアクティブだ。つまり、Vueエンジンは宣言された各データ・プロパティの変更を自動的に監視する。しかし、多くのデータ・プロパティがあり、そのほとんどが静的である場合、このデフォルトの機能はコンポーネントにオーバーヘッドを引き起こす可能性がある。このような場合でも、Vueエンジンはこれらの静的な値に対してウォッチャーを有効にするが、これは不要である。過剰なデータ・ウォッチャーの数を制限し、どのデータ・プロパティを可観測するかをより制御できるようにするため、VueはComposition ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

エンジニアが学ぶ会計システムの「知識」と「技術」

エンジニアが学ぶ会計システムの「知識」と「技術」

広川 敬祐, 五島 伸二, 小田 恭彦, 大塚 晃, 川勝 健司
グリーンなソフトウェア開発

グリーンなソフトウェア開発

Anne Currie, Sarah Hsu, Sara Bergman
強力なPython

強力なPython

Aaron Maxwell

Publisher Resources

ISBN: 9798341626102