iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >微信小程序怎么自定义组件Component使用
  • 803
分享到

微信小程序怎么自定义组件Component使用

2023-07-05 08:07:30 803人浏览 安东尼
摘要

本篇内容介绍了“微信小程序怎么自定义组件Component使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1- 前言在本文中你将收获小程序

本篇内容介绍了“微信小程序怎么自定义组件Component使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1- 前言

在本文中你将收获

  • 小程序如何使用自定义组件

  • 自定义组件之间的传值

  • 自定义组件中插槽的使用

2- 组件文件新建

2.1 定义组件

在根目录新建components文件夹,建立cell 文件夹,右击创建cell的Component组件

  • cell.js

  • cell.wxml

  • cell.JSON

  • cell.wxss

2.2 注册组件

页面的xxx.json ,usinGComponent注册

"usingComponents": {"item":"/components/item/item"}

2.3 使用组件

<item></item>

2.4 图参考

微信小程序怎么自定义组件Component使用

微信小程序怎么自定义组件Component使用

3- 外部类和样式隔离

3.1定义组件

cell.wxml 文件

<view class="cell cell-class"></view>

cell.wxss

.cell{  color: tomato;}.mycell{  color: #f70;  line-height: 120rpx !important;}

cell.js 文件

    options:{        styleIsolation:'isolated',  },  //通过组件的外部类实现父组件控制自己的样式  externalClasses:["cell-class"],

3.2 使用组件

<cell></cell><cell cell-class="mycell"></cell>

微信小程序怎么自定义组件Component使用

3.3 图解释

微信小程序怎么自定义组件Component使用

4- 组件插槽

4.1 默认插槽

cell.wxml

 <view class="cell">  我是cell组件  <slot></slot></view>

cell.js

    options:{    //允许多个插槽    multipleSlots:true,  },

cell.wxss

.cell{  height: 88rpx;  line-height: 88rpx;  border-bottom: 1rpx solid #cccccc;}

使用cell组件

<cell>  <text>放假</text>  <text>快点到来</text></cell>

微信小程序怎么自定义组件Component使用

4.2 命名多插槽

cell.wxml

 <view class="cell cell-class">  <slot name="pre"></slot>  我是cell组件  <slot></slot>  <slot name="next"></slot></view>

cell.js

    options:{    //允许多个插槽    multipleSlots:true,  },

cell.wxss

.cell{  height: 88rpx;  line-height: 88rpx;  border-bottom: 1rpx solid #cccccc;}

com.wxml

<!-- 插槽 --><cell>  <text slot="pre">????‍????</text>  <text slot="next">????‍????</text>  <text>放假</text>  <text>快点到来</text></cell><cell cell-class="mycell">  <text slot="next">????</text>  <text slot="pre">????‍</text>  <text>做核酸</text>  <text>今天要做</text></cell>

微信小程序怎么自定义组件Component使用

5- 组件传参

5.1 父传子

5.1.1 定义组件

cell.wxml

<view class="cell">  <text>{{title}}</text>  <text>{{num}}</text></view>

cell.js

// components/cell/cell.jsComponent({    options:{        styleIsolation:'isolated',    //允许多个插槽    multipleSlots:true,  },    properties: {    title:{      type:String,      value:""    },    num:{      type:Number,      value:1    }  },    data: {    //定义组件自己的数据count    count:1  },  })
5.1.2 使用组件

com.wxml

<cell title="做核酸" num="{{5}}"></cell><cell title="烦呐"></cell>
5.1.3 图解

微信小程序怎么自定义组件Component使用

5.2 子传参父

5.2.1 定义组件

cell.wxml

<view class="cell" bindtap="tapHd">  <text>{{title}}</text>  <text>{{count}}</text></view>

cell.js

// components/cell/cell.jsComponent({    options:{        styleIsolation:'isolated',    //允许多个插槽    multipleSlots:true,  },    properties: {    title:{      type:String,      value:""    },    num:{      type:Number,      value:1    }  },    data: {    //定义组件自己的数据count    count:1  },  lifetimes:{    //在组件生命周期attached挂载更新count    attached(){      console.log(this.data);      //count 的值为父组件传递的num值      this.setData({count:this.data.num})    }  },    methods: {    tapHd(){      this.setData({count:this.data.count+5})      //发送一个事件      this.triggerEvent("cellclick",this.data.count)    }  }})
5.2.2 使用组件

com.wxml

 <view class="cell" bindtap="tapHd">  <text>{{title}}</text>  <text>{{count}}</text></view>
5.2.3 图解

微信小程序怎么自定义组件Component使用

6- 案例item组件

6.1 定义组件

  • 首先在根目录下创建一个专门放自定义组件的文件夹;

  • 然后在小程序编辑器里,右键,新建Component;

微信小程序怎么自定义组件Component使用

<!--components/item/item.wxml--><navigator class="item itemclass" url="{{url}}" open-type="{{openType}}" bindtap="itemclick">  <view class="icon" wx:if="{{icon}}">    <image src="{{icon}}" mode="aspectFill"/>  </view>  <view class="content">    <view class="title" wx:if="{{title}}">      {{title}}    </view>    <slot name="title" wx:else ></slot>    <view class="right" wx:if="{{!showrslot}}">      <view class="tip">{{tip}}</view>      <view class="badge" wx:if="{{badge}}">      <view wx:if="{{badge===true}}" class="dot">  </view>        <view wx:else class="redbadge">{{badge}}</view>       </view>      <view class="arrow"></view>    </view>    <slot name="right" wx:else></slot>  </view></navigator>
.item{  line-height: 88rpx;  display: flex;  align-items: center;  justify-content: space-between;}.icon{  margin-left: 30rpx;  margin-right: 30rpx;  height: 100%;  display: flex;  align-items: center;}.icon image{  width: 60rpx;  height: 60rpx;}.content{  padding: 0 30rpx;  border-bottom: 1rpx solid #ccc;  display: flex;  flex: 1;}.title{  flex: 1;  color: #333;  font-size: 35rpx;}.right{  display: flex;  align-items: center;}.right .arrow{  height: 25rpx;  width: 25rpx;  border-top: 3rpx solid #999;  border-right: 3rpx solid #999;  transfORM: rotate(45deg);}.tip{  color: #999;  font-size: 28rpx;}.dot{  height: 15rpx;  width: 15rpx;  background-color: #f30;  margin-left: 15rpx;  border-radius: 50%;}.redbadge{  font-size: 20rpx;  padding: 5rpx;  background-color: #f30;  width: 30rpx;  max-height: 30rpx;  line-height: 30rpx;  color: #fff;  text-align: center;  margin-left: 15rpx;  border-radius: 20rpx;}

6.2 使用组件

引入组件:在页面的 json 文件中进行引用声明;

微信小程序怎么自定义组件Component使用

<!-- 引用组件的json文件 -->{  "usingComponents": {    "cell": "/components/cell/cell"  }}

在页面的 wxml 中像使用基础组件一样使用自定义组件(名字和声明的保持一致)

<!-- 引用组件的wxml文件 --><!--pages/component/component.wxml--><item title="支付" icon="/images/icon01.png"></item><item title="相册" icon="/images/icon02.png"></item><item title="设置" ></item><item title="朋友圈" icon="/images/icon03.png" badge="{{true}}" tip="10条消息未读"></item><item title="卡包" icon="/images/icon04.png" badge="{{12}}" tip="12条消息未读"></item><item title="服务" icon="/images/icon05.png" showrslot="{{true}}">  <switch checked="true" slot="right" /></item><item><view slot="title">插槽title</view></item><item title="新闻" icon="/images/icon07.png" url="/pages/index/index" open-type="switchTab"></item><item title="life" icon="/images/icon08.png" url="/pages/life/life" ></item><item title="消息" icon="/images/icon06.png" showrslot="{{true}}" itemclass="myitem">  <switch checked="true" slot="right" /></item>
.myitem{  line-height: 120rpx !important;  background-color: #f0f0f0;}

微信小程序怎么自定义组件Component使用

微信小程序怎么自定义组件Component使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 微信小程序怎么自定义组件Component使用

本文链接: https://www.lsjlt.com/news/350522.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序怎么自定义组件Component使用
    本篇内容介绍了“微信小程序怎么自定义组件Component使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1- 前言在本文中你将收获小程序...
    99+
    2023-07-05
  • 【小程序】微信小程序自定义组件Component详细总结
    1- 前言 在本文中你将收获 小程序如何使用自定义组件自定义组件之间的传值自定义组件中插槽的使用 2- 组件文件新建 2.1 定义组件 在根目录新建components文件夹,建立cell 文件夹,...
    99+
    2023-09-23
    微信小程序 小程序 前端 开发语言 javascript
  • 微信小程序自定义组件Component的代码详解
    目录1- 前言2- 组件文件新建2.1 定义组件2.2 注册组件2.3 使用组件2.4 图参考3- 外部类和样式隔离3.1定义组件3.2 使用组件3.3 图解释4- 组件插槽4.1 ...
    99+
    2023-03-02
    微信小程序自定义组件详解 微信小程序 component 微信小程序自定义组件
  • 微信小程序怎么自定义组件
    这篇文章主要讲解了“微信小程序怎么自定义组件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序怎么自定义组件”吧!组件模版和样式类似于页面,自定义组件拥有自己的 wxml&n...
    99+
    2023-06-26
  • 【微信小程序】自定义组件(二)
    🎁写在前面: 观众老爷们好呀,这里是前端小刘不怕牛牛频道,小程序系列文章又更新了呀。 上文我们讲解了微信小程序自定义组件的入门知识,那么今天牛牛就来讲讲自定义组件的进阶知识吧,...
    99+
    2023-09-01
    微信小程序 小程序 前端
  • 微信小程序自定义tabbar组件
    本文实例为大家分享了微信小程序自定义tabbar组件的具体代码,供大家参考,具体内容如下 由于项目需求,必须自己写组件: 第一步:在App.json中配置tabBar,自定也组件也必...
    99+
    2024-04-02
  • 【微信小程序】自定义组件(一)
    🎁写在前面: 观众老爷们好呀,这里是前端小刘不怕牛牛频道,小程序系列文章又更新了呀。 今天牛牛带来的是微信小程序的自定义组件入门知识,赶紧拿起小本本做笔记呀! ...
    99+
    2023-09-05
    微信小程序 前端 小程序
  • 微信小程序自定义波浪组件怎么用
    这篇文章主要为大家展示了“微信小程序自定义波浪组件怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序自定义波浪组件怎么用”这篇文章吧。先看看效果图:...
    99+
    2024-04-02
  • 微信小程序怎么自定义地址组件
    本文小编为大家详细介绍“微信小程序怎么自定义地址组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序怎么自定义地址组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。项目需求需要调用后台传过来的地址,存储...
    99+
    2023-07-02
  • 微信小程序自定义地址组件
    本文实例为大家分享了微信小程序自定义地址组件的具体代码,供大家参考,具体内容如下 项目需求 需要调用后台传过来的地址,存储地址时存的是地址的id,所以市面上的地址组件均不符合我的需求...
    99+
    2024-04-02
  • 微信小程序怎么使用自定义组件封装原生image组件
    本文小编为大家详细介绍“微信小程序怎么使用自定义组件封装原生image组件 ”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序怎么使用自定义组件封装原生image组件 ”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习...
    99+
    2023-06-26
  • 微信小程序中如何自定义组件
    这篇文章将为大家详细讲解有关微信小程序中如何自定义组件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在微信小程序开发过程中,对于一些可能在多个页面都使用的页面模块,可以把它封装成一个组件,以提高开发效率。...
    99+
    2023-06-29
  • 微信小程序自定义组件(超详细)
    💌写在开头: 哈喽呀,亲爱的宝子们。 今天要介绍的是关于小程序自定义组件的相关内容。 主要分以下几个部分:组件的创建,组件的结构,组件的引用,组件样式,组件的生命周期等。 ...
    99+
    2023-09-09
    微信小程序 小程序 前端
  • 微信小程序如何自定义tabbar组件
    这篇文章主要讲解了“微信小程序如何自定义tabbar组件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序如何自定义tabbar组件”吧!由于项目需求,必须自己写组件:第一步:在App...
    99+
    2023-06-14
  • 微信小程序中怎么自定义一个components组件
    本篇文章为大家展示了微信小程序中怎么自定义一个components组件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。小程序自定义组件找到components目录,没...
    99+
    2024-04-02
  • 微信小程序自定义顶部导航组件
    本文实例为大家分享了微信小程序自定义顶部导航组件,供大家参考,具体内容如下 在components中新建文件夹navbar components/navbar.wxml <!-...
    99+
    2024-04-02
  • 微信小程序实现自定义拍摄组件
    微信小程序实现自定义摄像头(在摄像头内添加提示信息),供大家参考,具体内容如下 摄像头组件(wxml) <!-- 拍照功能 自定义摄像头           bindtap:t...
    99+
    2024-04-02
  • 微信小程序组件间关系怎么定义和使用
    这篇文章主要介绍“微信小程序组件间关系怎么定义和使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序组件间关系怎么定义和使用”文章能帮助大家解决问题。  组件间关系  定义和使用组件间关系 ...
    99+
    2023-06-26
  • 微信小程序新手入门之自定义组件的使用
    前言 从小程序基础库版本 1.6.3 开始,小程序支持简洁的组件化编程。所有自定义组件相关特性都需要基础库版本 1.6.3 或更高。 开发者可以将页面内的功能模块抽象成自定义组件,以...
    99+
    2024-04-02
  • 微信小程序中如何自定义创建和使用组件
    在微信小程序中,可以通过使用自定义组件来实现对页面上重复使用的部分进行封装和复用。下面是在微信小程序中自定义创建和使用组件的步骤: ...
    99+
    2024-04-09
    微信小程序
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作