AsReader製品サイト

English Site

検索

製品情報

AsReaderブログ

Composition APIについて

カテゴリー:
最終更新日:2024年12月13日
Composition APIについて

東日本開発セクションの宮田です。
VCRGTAが面白くて仕方ないこの頃です。
1年ぶりに活動再開したあの人が見どころですね。

話は変わりましてComposition API(リリースは4年前)について語っていこうかと思います。
Vue.jsのVue2.6まではOptions APIを使用していましたが、Vue3からはComposition APIも利用することができます。
(Vue2.7以前は@vue/composition-apiをプラグインで利用できるらしい)
詳しくは下記を見てください。

●公式のFAQ

https://ja.vuejs.org/guide/extras/composition-api-faq


・・・では何を語るのかというとコーディング例を挙げていこうかと思います。

■コーディング例
●ページング機能(親と子供達の構成)
親のコンポーネント経由で兄から弟へデータを渡し、弟の変更を親経由で兄に渡す。
コンポーネントを分けたい時の構成、いろんなところで使えそうな気がします。
 ※デザイン等は省略しています。
 ※Vue3.5から追加されたAPIもありますので、バージョンに合わせて利用してください。
<ポイント>
 ・リアクティビティー API 、例: ref()で、リアクティブな状態、算出状態、ウォッチャーを直接作成できます。
 ・ライフサイクルフック、 例: onMounted()で、コンポーネントのライフサイクルにプログラム的なフックを設定します。
 ・オプション、例:props,emitsを利用し、コンポーネント間でデータの受け渡しができます。

●親コンポーネント



●兄コンポーネント



●弟コンポーネント



■まとめ

Composition APIを使ってみました。
個人的にはコンポーネントを細かく分けたい時に結構便利だと思いました。
変数を定義した際にref()やreactive()を使用しないと値が変更できない等、
知らないと上手く動作しないこともありますが書いていくと慣れてきますので使ってみてください。
技術はどんどん進歩していくので我々の勉強に終わりはないですね。

● Apple、Apple のロゴ、iPhone、iPod touchは、米国および他の国々で登録されたApple Inc.の商標です。
※iPhoneの商標は、アイホン株式会社のライセンスにもとづき使用されています。
※iOS商標は、米国Ciscoのライセンスに基づき使用されています。
● Androidは、Google LLCの商標です。 ● Windowsは米国 Microsoft Corporationの米国およびその他の国における登録商標です。
● QRコードはデンソーウェーブの登録商標です。
●その他、各社の会社名、システム名、製品名などは、一般に各社の登録商標または商標です。 
当社サイト内に記載されている社名、製品名、サービス名及びサイト名には、必ずしも商標表示「®」「(TM)」を付記していません。
※iOSデバイスと接続して使用する当社製品は、MFi認証を取得しています。 ※ 形状・色など予告なく変更する場合があります。