ホームページ ウェブフロントエンド uni-app uniappコンポーネントで属性タイプを設定する方法

uniappコンポーネントで属性タイプを設定する方法

Apr 23, 2023 am 09:08 AM

ユニアプリ開発では、コンポーネントはアプリケーションを構築するための基本モジュールであり、再利用して階層構造に編成することができます。コンポーネントを作成するとき、多くの場合、カスタマイズを実現するためにコンポーネントのプロパティを定義する必要があります。これらのプロパティは、文字列、数値、ブール値など、さまざまなタイプの場合があります。この記事では、uniapp コンポーネントで属性タイプを設定する方法を紹介します。

  1. prop 属性

uniapp では、コンポーネントのプロパティは prop を通じて定義されます。コンポーネントの vue ファイルでは、props 属性を通じてコン​​ポーネントのプロパティ リストを指定できます。例:

<template>
  <div>{{ message }}</div>
</template>

<script>
  export default {
    name: 'MyComponent',
    props: {
      message: String
    }
  }
</script>
ログイン後にコピー

この例では、MyComponent という名前のコンポーネントを定義し、message という名前の文字列型プロパティを持ちます。コンポーネントを使用する場合は、次のように使用できます。

<template>
  <div>
    <my-component message="Hello world!"></my-component>
  </div>
</template>
ログイン後にコピー

この例では、メッセージを「Hello world!」に設定します。 MyComponent がレンダリングされると、実際には「Hello world!」が表示されます。

  1. 属性タイプ

uniapp では、属性のタイプは有効な JavaScript タイプであればどれでもかまいません。属性タイプの例をいくつか示します。

// 字符串类型
message: String

// 数字类型
count: Number

// 布尔类型
visible: Boolean

// 对象类型
userInfo: Object

// 数组类型
list: Array

// 函数类型
action: Function
ログイン後にコピー

コンポーネントが使用されると、属性値は指定されたタイプに自動的に変換されることに注意してください。上記の例でメッセージを数値に設定すると、自動的に文字列に変換されます。

  1. デフォルトのプロパティ値

コンポーネントでは、通常、いくつかのデフォルトのプロパティ値が必要になります。 uniappでは、propsのdefault属性を設定することでデフォルト値を設定できます。例:

<template>
  <div>{{ message }}</div>
</template>

<script>
  export default {
    name: 'MyComponent',
    props: {
      message: {
        type: String,
        default: 'Hello world!'
      }
    }
  }
</script>
ログイン後にコピー

この例では、メッセージのデフォルト値が「Hello world!」であることを指定するデフォルト属性を追加しました。コンポーネントの使用時に message 属性を指定しない場合、デフォルト値「Hello world!」が表示されます。

  1. 属性値の制限

場合によっては、属性が特定の値のみを受け入れられるようにしたいことがあります。 uniapp では、enum を指定することでこれを実現できます。例:

<template>
  <div>{{ color }}</div>
</template>

<script>
  export default {
    name: 'MyComponent',
    props: {
      color: {
        type: String,
        enum: ['red', 'green', 'blue']
      }
    }
  }
</script>
ログイン後にコピー

この例では、color 属性が「red」、「green」、「blue」の 3 つの値のうち 1 つだけを受け入れられることを望みます。コンポーネントの使用時に指定した color プロパティが列挙リストにない場合、uniapp は警告をスローします。

  1. カスタム検証関数

関数を定義して属性の値を検証することもできます。例:

<template>
  <div>{{ score }}</div>
</template>

<script>
  export default {
    name: 'MyComponent',
    props: {
      score: {
        type: Number,
        validator: function (value) {
          return value >= 0 && value <= 100
        }
      }
    }
  }
</script>
ログイン後にコピー

この例では、score 属性の値を検証するバリデーター関数を追加します。スコア属性が条件を満たさない場合、uniapp は警告をスローします。

概要

uniapp では、コンポーネントのプロパティは、コンポーネントをカスタマイズしてニーズに合わせられるようにするため、非常に重要です。この記事では、コンポーネントでプロパティ タイプ、デフォルトのプロパティ値、修飾されたプロパティ値、およびカスタム検証関数を設定する方法について説明しました。この記事が、uniapp 開発コンポーネントをより効果的に使用するのに役立つことを願っています。

以上がuniappコンポーネントで属性タイプを設定する方法の詳細内容です。詳細については、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)

Uni-APPでプレ前セッサー(SASS、LESS)を使用するにはどうすればよいですか? Uni-APPでプレ前セッサー(SASS、LESS)を使用するにはどうすればよいですか? Mar 18, 2025 pm 12:20 PM

記事では、UNI-APPでSASSおよびPREPROCESSORSを使用して、セットアップ、利点、および二重使用法を詳細に使用することについて説明します。主な焦点は構成と利点にあります。[159文字]

Uni-AppのアニメーションAPIを使用するにはどうすればよいですか? Uni-AppのアニメーションAPIを使用するにはどうすればよいですか? Mar 18, 2025 pm 12:21 PM

この記事では、Uni-AppのアニメーションAPIの使用方法、アニメーション、キー関数、およびアニメーションのタイミングを結合および制御する方法を作成および適用する手順を詳細に説明します。

UNIAPPアプリケーションで実行できるさまざまなタイプのテストは何ですか? UNIAPPアプリケーションで実行できるさまざまなタイプのテストは何ですか? Mar 27, 2025 pm 04:59 PM

この記事では、ユニット、統合、機能、UI/UX、パフォーマンス、クロスプラットフォーム、セキュリティテストなど、UNIAPPアプリケーションのさまざまなテストタイプについて説明します。また、クロスプラットフォームの互換性を確保し、JESのようなツールを推奨しています

Uniappアプリケーションパッケージのサイズをどのように削減できますか? Uniappアプリケーションパッケージのサイズをどのように削減できますか? Mar 27, 2025 pm 04:45 PM

この記事では、コードの最適化、リソース管理、コード分割や怠zyなロードなどの手法に焦点を当てたUniappパッケージサイズを削減する戦略について説明します。

UNIAPP開発に利用できるデバッグツールは何ですか? UNIAPP開発に利用できるデバッグツールは何ですか? Mar 27, 2025 pm 05:05 PM

この記事では、Hbuilderx、Wechat開発者ツール、Chrome Devtoolsなどのツールに焦点を当てたUniapp開発のためのデバッグツールとベストプラクティスについて説明します。

uni-appのストレージAPI(uni.setstorage、uni.getStorage)を使用するにはどうすればよいですか? uni-appのストレージAPI(uni.setstorage、uni.getStorage)を使用するにはどうすればよいですか? Mar 18, 2025 pm 12:22 PM

この記事では、ローカルデータ管理のためにUni-AppのストレージAPI(uni.setstorage、uni.getStorage)を使用する方法について説明し、ベストプラクティス、トラブルシューティング、および効果的な使用のための制限と考慮事項について説明します。

デバイス機能(カメラ、ジオロケーションなど)にアクセスするためにUni-AppのAPIを使用するにはどうすればよいですか? デバイス機能(カメラ、ジオロケーションなど)にアクセスするためにUni-AppのAPIを使用するにはどうすればよいですか? Mar 18, 2025 pm 12:06 PM

この記事では、UNI-APPのAPIを使用して、許可設定やエラー処理など、カメラやジオロケーションなどのデバイス機能にアクセスします。

UNI-APPでユーザー入力を検証するにはどうすればよいですか? UNI-APPでユーザー入力を検証するにはどうすればよいですか? Mar 18, 2025 pm 12:17 PM

この記事では、JavaScriptとデータバインディングを使用してUNI-APPのユーザー入力の検証を説明し、データの整合性のためのクライアントとサーバー側の両方の検証を強調します。 uni-validateのようなプラグインは、フォーム検証に推奨されます。

See all articles