window.pipedriveLeadboosterConfig={です。 ベース:'leadbooster-chat.pipedrive.com'、 companyId:11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2、 } ;(function () { var w = window もし (w.LeadBooster) {なら console.warn('LeadBooster already exists') } else { w.LeadBooster = { {. q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: 関数 (n) { { this.q.push({ t: 'o', n: n, h: h }) this.q.push({ t: 't', n: n }) }, } } })() Vue - The CodestでのオプションAPIの使用停止
The Codest
  • 会社概要
  • サービス
    • ソフトウェア開発
      • フロントエンド開発
      • バックエンド開発
    • Staff Augmentation
      • フロントエンド開発者
      • バックエンド開発者
      • データエンジニア
      • クラウドエンジニア
      • QAエンジニア
      • その他
    • アドバイザリー
      • 監査&コンサルティング
  • 産業
    • フィンテック&バンキング
    • E-commerce
    • アドテック
    • ヘルステック
    • 製造業
    • 物流
    • 自動車
    • アイオーティー
  • 価値
    • CEO
    • CTO
    • デリバリー・マネージャー
  • チーム
  • Case Studies
  • ノウハウ
    • ブログ
    • ミートアップ
    • ウェビナー
    • リソース
採用情報 連絡先
  • 会社概要
  • サービス
    • ソフトウェア開発
      • フロントエンド開発
      • バックエンド開発
    • Staff Augmentation
      • フロントエンド開発者
      • バックエンド開発者
      • データエンジニア
      • クラウドエンジニア
      • QAエンジニア
      • その他
    • アドバイザリー
      • 監査&コンサルティング
  • 価値
    • CEO
    • CTO
    • デリバリー・マネージャー
  • チーム
  • Case Studies
  • ノウハウ
    • ブログ
    • ミートアップ
    • ウェビナー
    • リソース
採用情報 連絡先
戻る矢印 戻る
2022-06-02
ソフトウェア開発

VueでのオプションAPIの使用停止

The Codest

パヴェウ・ドルゴシュ

Vue.js開発者

なぜDueでOptions APIを使うべきでないのか?以下の記事でその答えを見つけ、Composition APIの利点を発見してください。

Vue 3 と呼ばれるコンポーネントを作成するための新しいアプローチを導入した。 コンポジション API.に代わるものである。 オプションAPI.コンポジションAPIは完全なオプションであり、以下を使用したい場合は使用する必要はない。 Vue 3.しかし、作業を容易にし、読みやすさを向上させるいくつかの重要な改善点が導入されています。 コード.

オプションAPIに対するコンポジションAPIの利点

1.より良いコード構成と読みやすさ。

コンポジションAPIには セットアップ.この中で、次のようなコンポーネントに必要なすべての要素を作成することができる: データ, 方法, 計算特性, 観戦者.このおかげで、ある機能を担当するロジックを一箇所にまとめることで、コードをすっきりさせることができる。対照的に、Options APIでは、ファイル中にロジックを散在させることを余儀なくされた。その結果、コードは読みにくく、スクロールが必要でした。Composition APIでは、メソッドやウォッチャーなどをタイプ別にグループ化する必要がなくなりました。

APIオプションと構成例

2.ロジックの抽出と再利用

Composition APIを使えば、どこでもリアクティブなコードを書くことができる。コンポーネントの外部にリアクティブ・ロジックを引き出せる。この種のコードは コンポーザブル.Composablesは多くのコンポーネントにインポートすることができ、いくつかのロジックをカプセル化し、必要なリアクティブ要素を公開することができます。

// shopping-list.js
import ( computed ) from "vue";

export function useShoppingList(listId) (
  const products = shoppingList.getAllProducts(listId);
  const productsCount = computed(() => products.value.length);
  const deleteProduct = (productId) => shoppingList.deleteProduct(productId);

  return (
    products、
    productsCount、
    deleteProduct、
  );
)

// コンポーネント
useSpoppingListを"@/composables/shopping-list.js "からインポートする;
エクスポート・デフォルト (
  setup() (
    const ( products, productsCount, deleteProduct ) = useSpoppingList();
    return ( products, productsCount, deleteProduct );
  ),
);

3.コンポーネント内で定数や外部リソースを簡単に使用できます。

オプションAPIでは、たとえば別のファイルからインポートした静的リストを追加するには、それをdata()に追加するか(これはパフォーマンスに悪影響を及ぼします)、それを これ で created().どちらの方法もあまりエレガントではない。コンポジションAPIと新しい セットアップ このメソッドから、リアクティブなものだけでなく、定数や外部依存関係もエクスポートできる。

./list.json "からリストをインポートする;
エクスポート・デフォルト (
  setup() (
    return ( list );
  ),
);
  1. Vue 2のComposition APIを使用することもできます。

オフィシャルに感謝 vue/composition-api プラグインを使用する場合、Composition API は Vue 2 も同様だ。

新しいコンポジションAPIの使い方は?

<h3>セットアップ方法</h3>

setup() は Vue 3 ここに、データ・オブジェクトやメソッドなど、必要なものをすべて置くことができる。そこから、テンプレートに含めたい要素を返すことができます。

<template>
  <div>(( カウント ))</div>
</template>
import ( ref ) from "vue";
エクスポート・デフォルト (
  setup() (
    const count = ref(10);
    return ( count );
  ),
);

リアクティブ()

リアクティブ・オブジェクトや配列を作成するには リアクティブ(デフォルト値) メソッドに渡すことができます。メソッドの引数でこのオブジェクトの初期値を渡すことができます。メソッドは 代理人 そのため、このオブジェクトに変更を加えるときは Vue はそれを知っており、ビューを適切にリフレッシュすることができる。

コンポジション API

import ( reactive ) from "vue";
エクスポート・デフォルト (
  setup() (
    const user = reactive((
      name: "John"、
      role: "ADMIN"、
    ));
    return ( user );
  ),
);

オプションAPI

輸出デフォルト(
  data() (
    を返す (
      user: (
        name: "John"、
        role: "ADMIN"、
      ),
    );
  ),
);

Reactive のみ は、オブジェクト型(オブジェクト、配列、および 地図 そして セット).のようなプリミティブ型を保持することはできない。 ストリング, 番号 または ブーリアン.そのため、Vueも導入している。 ref().

ref()

プリミティブ要素に反応性を持たせるには、それを ref().

コンポジション API

import ( ref ) from "vue";
エクスポート・デフォルト (
  setup() (
    const count = ref(10);
    return ( count );
  ),
);

オプションAPI

輸出デフォルト(
  data() (
    を返す (
      count:10,
    );
  ),
);

リアクティブ・オブジェクトの修正

オブジェクトの値はリアクティブ・メソッドから直接変更できるが、プリミティブな値を変更するには 価値 フィールドにいる。

import ( ref, reactive ) from "vue";
エクスポート・デフォルト (
  setup() (
    const user = reactive((
      name: "John"、
    ));
    user.name = "John Doe"; // 値の変更

    const count = ref(10);
    count.value = 20; // 値の変更

    return (
      ユーザー
      count、
    );
  ),
);

あなた ダメダメ を使用する必要がある。 価値 プロパティを使用する。

<div>(( カウント ))</div>

計算された特性

計算されたプロパティは、インポートされた 計算された メソッドを使用する。

import ( reactive, computed ) from "vue";
エクスポート・デフォルト (
  setup() (
    const list = reactive([
      「アイテム1"、
      「アイテム2"、
    ]);

    // 計算される
    const isEmpty = computed(() => list.length === 0);

    return (
      list、
      isEmpty、
    );
  ),
);

方法

メソッドをネストすることもできます。 セットアップ メソッドを使用する。

コンポジション API

import ( ref ) from "vue";
エクスポート・デフォルト (
  setup() (
    const count = ref(10);

        // メソッド
    const increment = () => (
      count.value++;
    );

    return (
      count、
      インクリメント、
    );
  ),
);

ウォッチャー

ウォッチャーは次のような方法で作成される。 計算された.ただし 代理人 オブジェクトすなわち 名称ではなく、下の例のように 名前.値 値そのものである。

import ( watch, ref ) from "vue";
エクスポート・デフォルト (
  setup() (
    const name = ref("John");
        // ウォッチャー
    watch(name, (currentValue, oldValue) => (
      console.log(`Value changed from $(oldValue)to $(currentValue)`);
    ));
    return ( name );
  ),
);

概要

この記事では、Composition APIがOptions APIとどのように異なり、どのような利点があるのかを大まかに理解していただくために、Composition APIの基本のみを説明しました。コンポジションAPIは、コンポーネントの残りの要素、例えば次のようなものに対する代替も提供します。 ホックなどの新しい手法を導入している。 ウォッチエフェクト.公式サイトで読むのが良いだろう。 Vue 3 ドキュメンテーション

協力バナー

関連記事

ソフトウェア開発

Javascriptツールの使用例

プログラミングのレベルアップに役立つ検索ツールJavaScriptをご紹介します。ESLint、Prettier、Huskyについてもっと知る!

The Codest
レダ・サルミ React 開発者
ソフトウェア開発

内部開発者と外部開発者の雇用

社内採用か社外採用か?それは究極のジレンマだ!以下の記事で、outsourcingと社内チーム構築のメリットをご確認ください。

The Codest
グジェゴシュ・ロズムス Javaユニットリーダー
ソフトウェア開発

Reactの長所と短所

なぜReactを使う価値があるのか?このJavaScriptライブラリにはどんな利点があるのか?その答えを見つけるために、この記事に飛び込んで、Reactを使う本当の利点を発見してください。

The Codest
セザリー・ゴラルスキー Software Engineer
ソフトウェア開発

チャンピオンの比較Angular vs Vue

現在、いくつかのフロントエンド・フレームワークが一般的に使用され、そのクリエイターたちによって常に開発されている。しかし、それらには共通点があるかもしれない。ここでは...

オリウィア・オレメク

ナレッジベースを購読して、IT部門の専門知識を常に最新の状態に保ちましょう。

    会社概要

    The Codest - ポーランドに技術拠点を持つ国際的なソフトウェア開発会社。

    イギリス - 本社

    • オフィス 303B, 182-184 High Street North E6 2JA
      イギリス、ロンドン

    ポーランド - ローカル・テック・ハブ

    • ファブリチュナ・オフィスパーク、アレハ
      ポコジュ18、31-564クラクフ
    • ブレイン・エンバシー, コンストルクトースカ
      11, 02-673 Warsaw, Poland

      The Codest

    • ホーム
    • 会社概要
    • サービス
    • Case Studies
    • ノウハウ
    • 採用情報
    • 辞書

      サービス

    • アドバイザリー
    • ソフトウェア開発
    • バックエンド開発
    • フロントエンド開発
    • Staff Augmentation
    • バックエンド開発者
    • クラウドエンジニア
    • データエンジニア
    • その他
    • QAエンジニア

      リソース

    • 外部ソフトウェア開発パートナーとの協力に関する事実と神話
    • 米国から欧州へ:アメリカの新興企業がヨーロッパへの移転を決断する理由
    • テックオフショア開発ハブの比較:テックオフショア ヨーロッパ(ポーランド)、ASEAN(フィリピン)、ユーラシア(トルコ)
    • CTOとCIOの課題は?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • ウェブサイト利用規約

    著作権 © 2025 by The Codest。無断複写・転載を禁じます。

    jaJapanese
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek jaJapanese