目次
vue3.0のsetupの使い方とは
ホームページ ウェブフロントエンド Vue.js vue3.0のsetupの使い方は何ですか?

vue3.0のsetupの使い方は何ですか?

Feb 25, 2022 pm 02:43 PM

vue3.0 では、setup 関数は組み合わせ API の入り口であり、データとパラメーターを定義するために使用されます。構文は "setup(props,{slots,attrs,emit}){const name = 'name'return {name}}"; この関数は同期のみ可能であり、非同期にはできません。

vue3.0のsetupの使い方は何ですか?

この記事の動作環境: Windows 10 システム、Vue3 バージョン、DELL G3 コンピューター。

vue3.0のsetupの使い方とは

1. setup関数の特徴と機能

Vue3.0であることは確かです。 Vue2.x バージョンは、日常業務で Vue3 の Vue2.x の関連構文を使用できることを意味しますが、実際に Vue3 を使用してプロジェクトを作成し始めると、Vue2.x よりもはるかに便利であることがわかります

Vue3 の大きな特徴関数 ---- setup

1. setup 関数は、ライフサイクル関数 beforeCreate と Created の 2 つのフック関数、つまり data と data の間の関数です。 setup 関数では使用できません。メソッドのデータとメソッド

2. setup 関数は、Composition API への入り口です。

3. setup 関数で定義された変数とメソッドは、そうしないと、テンプレートで使用できません

2. セットアップ関数に関する注意事項:

1. Created ライフ サイクル メソッド以降セットアップ関数が実行されたときに実行されなかったので、セットアップ関数ではデータとメソッドの変数とメソッドは使用できません

2. セットアップ関数ではデータとメソッドが使用できないため、Vue誤った使用を避けるために、セットアップ関数の変数とメソッドを直接置き換えます。これは未定義に変更されました

3. セットアップ関数は同期のみ可能であり、非同期にはできません

使用法 1: ref

<template>
 <div id="app">
  {{name}}
  <p>{{age}}</p>
  <button @click="plusOne()">+</button>
 </div>
</template>
 
<script>
import {ref} from &#39;vue&#39;
export default {
 name:&#39;app&#39;,
 data(){
  return {
   name:&#39;xiaosan&#39;
  }
 },
 setup(){
  const name =ref(&#39;小四&#39;)
  const age=ref(18)
  function plusOne(){
   age.value++ //想改变值或获取值 必须.value
  }
  return { //必须返回 模板中才能使用
   name,age,plusOne
  }
 }
}
</script>
ログイン後にコピー

と組み合わせて使用​​します#使用法 2: コード分割

オプション API と構成 API

オプション API 規約:

受信側を設定する必要がありますprops のパラメータ

data に変数を設定する必要があります

computed に計算されたプロパティを設定する必要があります

watch に listen プロパティを設定する必要があります

メソッド内にイベント メソッドを設定する必要があります。

オプション API では、どこで何をするかについて合意されており、その結果、コードをある程度分割する必要があることがわかります。

Composition API を使用するようになったので、このような合意はなくなりました。したがって、コード構成は非常に柔軟になり、制御コードはセットアップで記述することができます。

setup 関数には props と context という 2 つのパラメータがあります。重要なことは、setup 関数には this がないということです。vue3.0 では、これらへのアクセスは次の形式になります: this.xxx=》context。 xxx

このコンテキストはなくなり、オプション API の強制コード分離もなくなりました。 Comboposition API はより広い世界を提供するため、より慎重かつ制限される必要があります。

複雑なロジック コードの場合は、コンポジション API の本来の目的にさらに注意を払う必要があり、ためらわずにコンポジション API を使用してコードを分離し、エクスポート用にさまざまなモジュールに分割します。

私たちの期待は次のとおりです:

importuseAfrom&#39;./a&#39;;
importuseBfrom&#39;./b&#39;;
importuseCfrom&#39;./c&#39;;
exportdefault{
setup (props) {
let{ a, methodsA } = useA();
let{ b, methodsB } = useA();
let{ c, methodsC } = useC();
return{
a,
methodsA,
b,
methodsB,
c,
methodsC
}
}
}
ログイン後にコピー

たとえセットアップ コンテンツ コードの量がますます増えても、私たちは常に、量は多くても乱雑にならず、明確な方法で前進していきます。コード構造。

[関連する推奨事項:「vue.js チュートリアル 」]

以上がvue3.0のsetupの使い方は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

vue.jsでカスタムプラグインを作成および使用するにはどうすればよいですか? vue.jsでカスタムプラグインを作成および使用するにはどうすればよいですか? Mar 14, 2025 pm 07:07 PM

記事では、開発、統合、メンテナンスのベストプラクティスなど、カスタムVue.jsプラグインの作成と使用について説明します。

VUEはフロントエンドまたはバックエンドに使用されていますか? VUEはフロントエンドまたはバックエンドに使用されていますか? Apr 03, 2025 am 12:07 AM

Vue.jsは、主にフロントエンド開発に使用されます。 1)ユーザーインターフェイスとシングルページアプリケーションの構築に焦点を当てた軽量で柔軟なJavaScriptフレームワークです。 2)Vue.jsのコアはその応答性データシステムであり、データが変更されるとビューは自動的に更新されます。 3)コンポーネントの開発をサポートし、UIを独立した再利用可能なコンポーネントに分割できます。

Vue.jsでツリーシェーキングを使用して未使用のコードを削除するにはどうすればよいですか? Vue.jsでツリーシェーキングを使用して未使用のコードを削除するにはどうすればよいですか? Mar 18, 2025 pm 12:45 PM

この記事では、vue.jsでツリーシェーキングを使用して未使用のコードを削除し、ES6モジュールを使用したセットアップ、Webパック構成、および効果的な実装のためのベストプラクティスの詳細について説明します。

Vue.js(コンポーネントベースのアーキテクチャ、仮想DOM、リアクティブデータバインディング)の主な機能は何ですか? Vue.js(コンポーネントベースのアーキテクチャ、仮想DOM、リアクティブデータバインディング)の主な機能は何ですか? Mar 14, 2025 pm 07:05 PM

VUE.JSは、コンポーネントベースのアーキテクチャ、パフォーマンスのための仮想DOM、およびリアルタイムのUI更新用のリアクティブデータバインディングでWeb開発を強化します。

Vue.jsは学ぶのが難しいですか? Vue.jsは学ぶのが難しいですか? Apr 04, 2025 am 12:02 AM

Vue.jsは、特にJavaScriptファンデーションを持つ開発者にとって、学ぶのは難しくありません。 1)その進歩的な設計とレスポンシブシステムは、開発プロセスを簡素化します。 2)コンポーネントベースの開発により、コード管理がより効率的になります。 3)使用例は、基本的および高度な使用法を示しています。 4)一般的なエラーは、vuedevtoolsを介してデバッグできます。 5)V-IF/V-Showや重要な属性を使用するなど、パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率を向上させることができます。

さまざまなビルドターゲット(開発、生産)を使用するようにVue CLIを構成するにはどうすればよいですか? さまざまなビルドターゲット(開発、生産)を使用するようにVue CLIを構成するにはどうすればよいですか? Mar 18, 2025 pm 12:34 PM

この記事では、さまざまなビルドターゲットにVue CLIを構成し、環境を切り替え、生産ビルドを最適化し、デバッグ用のソースマップを確保する方法について説明します。

コンテナ化された展開にDockerを使用してVueを使用するにはどうすればよいですか? コンテナ化された展開にDockerを使用してVueを使用するにはどうすればよいですか? Mar 14, 2025 pm 07:00 PM

この記事では、VUEを使用してDockerを展開するために説明し、コンテナ内のVUEアプリケーションのセットアップ、最適化、管理、およびパフォーマンス監視に焦点を当てています。

vue.js文字列をオブジェクトに変換する方法は何ですか? vue.js文字列をオブジェクトに変換する方法は何ですか? Apr 07, 2025 pm 09:18 PM

json.parse()stringにオブジェクトを使用することは、最も安全で効率的です。文字列がJSON仕様に準拠していることを確認し、一般的なエラーを回避します。 Try ... CATCHを使用して例外を処理して、コードの堅牢性を向上させます。セキュリティリスクがあるeval()メソッドの使用は避けてください。巨大なJSONの弦の場合、パフォーマンスを最適化するために、チャンクされた解析または非同期解析を考慮することができます。

See all articles