目次
作成については特に言うことはありませんが、上記の [新しいコンポーネント ファイル] に従ってください。手動で作成する場合は、json ファイルで宣言することを忘れないでください (新しいミニ ファイルにはデフォルトで含まれています)。プログラム開発ツール)
親コンポーネントは子コンポーネントに値を渡します
上にタイトルの内容を書き留めていることがわかりますが、実際の使用では、異なるモジュールに応じて異なるタイトルを渡す必要があります。 . コンテンツなので、親と子の間で値の転送を使用する必要があります。
在自定义组件中使用插槽(slot)
单插槽
多插槽
注意
Component的生命周期
ホームページ WeChat アプレット ミニプログラム開発 ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

Oct 11, 2021 am 11:00 AM
アプレット

ミニ プログラムで Component コンポーネントを使用するにはどうすればよいですか?次の記事では、ミニ プログラムのカスタム コンポーネントに関する包括的で実践的なガイドを紹介します。お役に立てば幸いです。

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

ミニ プログラムで、ページ内の機能モジュールを抽象化し、別のページで 再利用したい場合は、カスタム コンポーネントを使用できます。カスタム コンポーネントは、複雑なページを複数の 低結合モジュールに分割できます。これは使いやすいだけでなく、コードのメンテナンスにも役立ちます。 [関連する学習の推奨事項: 小さなプログラム開発チュートリアル]

序文

この記事から得られる情報

  • 使用方法ミニ プログラム コンポーネントの定義

  • カスタム コンポーネント間のさまざまな値の転送

  • カスタム コンポーネントでのスロットの使用

  • 地雷除去、この記事のミニ プログラムは WeChat ミニ プログラムを指します (ただし、他のミニ プログラムも同様の考え方を持つはずです)

  • 地雷除去、この記事の主な内容カスタム コンポーネントのさまざまな使用方法について説明しており、コンポーネントをパッケージ化する方法を説明するものではありません。

基本的な準備 (無視しても構いません)

新しいフォルダーの追加

最初にルート ディレクトリにカスタム コンポーネント専用のフォルダーを作成します (フォルダー名前と場所は任意です)

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

新しいコンポーネント ファイルを作成します

次に、ミニ プログラム エディターで右クリックし、新しいコンポーネントを作成します

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

なぜこのステップについて特に言及する必要があるのでしょうか?

私と同じように、小規模なプログラム開発ツールをプレビュー ツールとしてのみ使用し、その後は他のエディターを使用して開発した友人がいるかどうかはわかりません。

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

後で、ミニ プログラムでコンポーネントまたはページを直接作成すると、4 つのファイルすべてが一度に作成され、コンテンツ テンプレートも入力されることがわかりました。開発者は、ツールのプレビューに加えて、新しいファイルの作成にも使用します。

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

サンプルの背景説明

下図のモジュール分割タイトルを例として使用して、簡単なコンポーネントの例を作成します (単なる盲目的な例)

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有#カスタム コンポーネントを導入するにはどうすればよいですか?

作成については特に言うことはありませんが、上記の [新しいコンポーネント ファイル] に従ってください。手動で作成する場合は、json ファイルで宣言することを忘れないでください (新しいミニ ファイルにはデフォルトで含まれています)。プログラム開発ツール)

{
  "component": true
}
ログイン後にコピー

コンポーネント メソッドの紹介

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

json

ファイルに参照ステートメントを作成します。ページ<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>&lt;!-- 引用组件的json文件 --&gt; { &quot;usingComponents&quot;: { &quot;x-title&quot;: &quot;/components/title/title&quot; } }</pre><div class="contentsignin">ログイン後にコピー</div></div>ページ内

wxml

では、基本コンポーネントと同様にカスタム コンポーネントを使用します (名前は宣言と一致している必要があります) <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>&lt;!-- 引用组件的wxml文件 --&gt; &lt;x-title&gt;&lt;/x-title&gt;</pre><div class="contentsignin">ログイン後にコピー</div></div>値を渡す方法は?

親コンポーネントは子コンポーネントに値を渡します

上にタイトルの内容を書き留めていることがわかりますが、実際の使用では、異なるモジュールに応じて異なるタイトルを渡す必要があります。 . コンテンツなので、親と子の間で値の転送を使用する必要があります。

#親は子に値を渡します

#
<!-- 父级wxml -->
<x-title titleText="全部订单"></x-title>

<!-- 如果父级的值是一个变量则 -->
<x-title titleText="{{currentTitle}}"></x-title>
ログイン後にコピー

#子は親から渡された値を受け取ります#

<!-- 子级js -->
properties: {
        titleText:{
            type:String,
            value:&#39;其他&#39;
        }
    },
ログイン後にコピー

子コンポーネントは親コンポーネントに値を渡します

コンポーネントを少し修正し、詳細操作ボタンを新たに追加します。現在、ループによって複数のモジュールが取得できています。詳細をクリックすると、子は現在のモジュールの ID を親に渡します。

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

#子コンポーネントは親コンポーネントにパラメータを渡します

<!-- 子级wxml -->
 <view class="title-oper" bindtap="gotoDetail">详情</view>
ログイン後にコピー
<!-- 子级js -->
 gotoDetail(){
    this.triggerEvent(&#39;gotoDetail&#39;,this.data.titleId)
 }
ログイン後にコピー

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

親コンポーネントは子コンポーネントのパラメータを受け取ります

<!-- 父级 wxml -->
<x-title titleText="{{item.title}}"
             titleId="{{item.id}}"
             bind:gotoDetail="gotoDetail"></x-title>
ログイン後にコピー
<!-- 父级 js -->
 //通过e.detail获取子组件传过来的参数
gotoDetail(e){ 
    const id = e.detail 
    console.log(&#39;从子组件接收到的id&#39;,id)
  }
ログイン後にコピー

ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

親は子コンポーネントのメソッドを呼び出します子コンポーネントはメソッドを定義します

<!-- 子级 js -->
childMethod(){
    console.log(&#39;我是子组件的方法&#39;)
 },
ログイン後にコピー

Parent まず、サブコンポーネントに idミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

<!-- 父级 wxml -->
<x-title id="titleCom"></x-title>

<van-button type="primary" bindtap="triggerChildMethod">调用子组件方法</van-button>
ログイン後にコピー

js ページのライフサイクルでコンポーネントを取得し、それをカスタム変数 titleCom に保存します。その後、サブコンポーネントのメソッド

<!-- 父级 js -->
 onReady(){
    this.titleCom = this.selectComponent("#titleCom");
  },
  
triggerChildMethod(){
    this.titleCom.childMethod();
  }
ログイン後にコピー

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

如果this.selectComponent()返回为null

1、检查wxml定义的id和js使用的是否一致;

2、自定义组件是否渲染,例如你使用了wx:if,导致组件还未渲染

传值官网相关文档:

https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/events.html

在自定义组件中使用插槽(slot)

我们上面在自定义组件中加了【详情】查看的操作按钮,但是有的地方我们可能并不想用文字,想改成图标或者按钮,当某处放置的节点内容不确定时,我们就可以使用插槽来处理。

插槽就相当于在子组件中放一个占位符,这样父组件就可以向子组件填充html了。

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

单插槽

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

在子组件加入插槽

<!-- 子级 wxml -->
 <slot></slot>
ログイン後にコピー

父级即可在组件内任意填充内容,比如插入一个图标(如果子级没有加slot,及时填充了html也不会被渲染)

<!-- 父级 wxml -->
 <x-title>
 	<view class="oper-wrap">
            <van-icon name="arrow" />
    </view>
 </x-title>
ログイン後にコピー

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

多插槽

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

先在子组件的js开启一下多slot支持

 <!-- 子级 js -->
 options: {
        multipleSlots: true // 在组件定义时的选项中启用多slot支持
    },
ログイン後にコピー

子组件加上插槽需要给插槽加上名字

 <!-- 子级 wxml --> 
 <slot name="icon"></slot>
 
  <slot name="oper"></slot>
ログイン後にコピー

父级使用

 <!-- 父级 wxml --> 
 <view class="icon-wrap" slot="icon">
    <van-icon name="orders-o" size="24"/>
 </view>

<view class="oper-wrap"  slot="oper">
   <van-button type="primary" custom-style="{{customStyle}}">更多</van-button>
</view>
ログイン後にコピー

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

注意

问:为什么加了插槽,却没有反应?

1ミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有

虽然我只在【子组件】加了1个插槽,但是因为加上了名字,所以同样需要在【子组件】的js里开启多插槽

 options: {
        multipleSlots: true // 在组件定义时的选项中启用多slot支持
    },
ログイン後にコピー

插槽官网文档:

https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/wxml-wxss.html

Component的生命周期

Component({
  lifetimes: {
    attached: function() {
      // 在组件实例进入页面节点树时执行
    },
    detached: function() {
      // 在组件实例被从页面节点树移除时执行
    },
  },
  //组件所在页面的生命周期
   pageLifetimes: {
    show: function() {
      // 页面被展示
    },
    hide: function() {
      // 页面被隐藏
    },
    resize: function(size) {
      // 页面尺寸变化
    }
  }
  // 以下是旧式的定义方式,可以保持对 <2.2.3 版本基础库的兼容
  attached: function() {
    // 在组件实例进入页面节点树时执行
  },
  detached: function() {
    // 在组件实例被从页面节点树移除时执行
  },
  // ...
})
ログイン後にコピー

生命周期官网:

https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/lifetimes.html

更多编程相关知识,请访问:编程视频!!

以上がミニプログラムでコンポーネントコンポーネントを使用するにはどうすればよいですか?実践的なガイドの共有の詳細内容です。詳細については、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)

Python を使用して WeChat アプレットを開発する Python を使用して WeChat アプレットを開発する Jun 17, 2023 pm 06:34 PM

モバイル インターネット技術とスマートフォンの普及により、WeChat は人々の生活に欠かせないアプリケーションになりました。 WeChat ミニ プログラムを使用すると、アプリケーションをダウンロードしてインストールすることなく、ミニ プログラムを直接使用して、いくつかの簡単なニーズを解決できます。この記事では、Python を使用して WeChat アプレットを開発する方法を紹介します。 1. 準備 Python を使用して WeChat アプレットを開発する前に、関連する Python ライブラリをインストールする必要があります。ここでは、wxpy と itchat の 2 つのライブラリを使用することをお勧めします。 wxpy は WeChat マシンです

小さなプログラムでも反応できますか? 小さなプログラムでも反応できますか? Dec 29, 2022 am 11:06 AM

ミニプログラムはreactを利用することができます 使い方: 1. 「react-reconciler」に基づいてレンダラーを実装し、DSLを生成します; 2. DSLを解析してレンダリングするためのミニプログラムコンポーネントを作成します; 3. npmをインストールし、開発者ビルドを実行しますツール内の npm; 4. パッケージを独自のページに導入し、API を使用して開発を完了します。

WeChat ミニ プログラムにカードめくり効果を実装する WeChat ミニ プログラムにカードめくり効果を実装する Nov 21, 2023 am 10:55 AM

WeChat ミニ プログラムでのカードめくり効果の実装 WeChat ミニ プログラムでは、カードめくり効果の実装は、ユーザー エクスペリエンスとインターフェイス インタラクションの魅力を向上させることができる一般的なアニメーション効果です。以下では、WeChat アプレットでカードめくりの特殊効果を実装する方法と、関連するコード例を詳しく紹介します。まず、ミニ プログラムのページ レイアウト ファイルに 2 つのカード要素を定義する必要があります。1 つは前面のコンテンツを表示するため、もう 1 つは背面のコンテンツを表示するためです。具体的なサンプル コードは次のとおりです: &lt;!--index.wxml- ->&l

アリペイ、希少文字ライブラリを収集・補完する「漢字拾い-希少文字」ミニプログラムを開始 アリペイ、希少文字ライブラリを収集・補完する「漢字拾い-希少文字」ミニプログラムを開始 Oct 31, 2023 pm 09:25 PM

10月31日の当サイトのニュースによると、今年5月27日、アント・グループは「漢字拾いプロジェクト」の立ち上げを発表し、最近新たな進展を迎えた:アリペイが「漢字拾い-珍しい文字」ミニプログラムを開始協会からコレクションを収集する レア文字は、レア文字ライブラリを補完し、アリペイでのレア文字入力方法の改善に役立つように、レア文字に異なる入力エクスペリエンスを提供します。現在、ユーザーは「漢字ピックアップ」「珍文字」などのキーワードで検索することで「珍文字」アプレットに入ることができる。ミニプログラムでは、ユーザーがシステムで認識・入力されなかった珍しい文字の画像を送信し、確認後、Alipay のエンジニアがフォントライブラリに追加エントリを作成します。当サイトでは、発音が不明瞭な珍しい単語を対象とした最新の単語分割入力方法をミニプログラムで体験できることに注目しました。ユーザー解体

uniapp がミニ プログラムと H5 の間で迅速な変換を実現する方法 uniapp がミニ プログラムと H5 の間で迅速な変換を実現する方法 Oct 20, 2023 pm 02:12 PM

uniapp がミニ プログラムと H5 の間で迅速な変換を実現するには、具体的なコード例が必要ですが、近年、モバイル インターネットの発展とスマートフォンの普及に伴い、ミニ プログラムと H5 は不可欠なアプリケーション形式となっています。クロスプラットフォーム開発フレームワークとして、uniapp は一連のコードに基づいて小規模プログラムと H5 間の変換を迅速に実現し、開発効率を大幅に向上させます。この記事では、uniapp がミニ プログラムと H5 の間で迅速な変換を実現する方法と、具体的なコード例を紹介します。 1. uniapp uniaの紹介

ミニプログラム登録の操作方法 ミニプログラム登録の操作方法 Sep 13, 2023 pm 04:36 PM

ミニ プログラムの登録操作手順: 1. 個人 ID カード、法人営業許可証、法人 ID カードおよびその他の提出資料のコピーを準備します; 2. ミニ プログラム管理のバックグラウンドにログインします; 3. ミニ プログラム設定ページに入ります; 4. 「基本設定」を選択; 5. 出願情報を入力; 6. 出願資料をアップロード; 7. 出願申請を送信; 8. 審査結果を待ちます。出願が不合格の場合は、理由に応じて修正してください9. 出願のフォローアップ操作は可能です。

Python で簡単なチャット プログラムを作成するためのチュートリアル Python で簡単なチャット プログラムを作成するためのチュートリアル May 08, 2023 pm 06:37 PM

実装アイデア: チャット ルームのさまざまな機能を処理するために、スレッドのサーバー側を確立します。x02 クライアントの確立はサーバーよりもはるかに簡単です。クライアントの機能はメッセージの送受信と、特定の文字を特定の規則に従って入力するため、クライアント側では、メッセージ受信専用とメッセージ送信専用の 2 つのスレッドを使用するだけで、さまざまな機能を使用できます。使用しないでください。

WeChat ミニ プログラムのメンバーシップを取得する方法 WeChat ミニ プログラムのメンバーシップを取得する方法 May 07, 2024 am 10:24 AM

1. WeChat ミニ プログラムを開き、対応するミニ プログラム ページに入ります。 2. ミニ プログラム ページでメンバー関連の入り口を見つけます。通常、メンバーの入り口は下部のナビゲーション バーまたはパーソナル センターにあります。 3. メンバーシップポータルをクリックして、メンバーシップ申請ページに入ります。 4. 入会申込ページにて、携帯電話番号、氏名等の必要事項をご入力の上、送信してください。 5. ミニ プログラムは会員申請を審査します。審査に合格すると、ユーザーは WeChat ミニ プログラムの会員になることができます。 6. 会員になると、ユーザーはポイント、クーポン、会員限定アクティビティなど、より多くの会員権を享受できます。

See all articles