【UniApp】-uni-app-自定义组件

前言

  • 经过上个章节的介绍,大家可以了解到 uni-app-网络请求的基本使用方法
  • 那本章节来给大家介绍一下 uni-app-自定义组件 的基本使用方法
  • 原本打算是直接写项目的,在写项目之前还有个内容需要我在码一篇文章,所以就先码这篇文章了
  • 本章节的内容比较简单,大家可以快速的过一遍,然后在项目中使用
  • 就是自定义组件,虽然 UniApp 是基于 Vue 的,但是在使用自定义组件的时候,还是有一些需要注意的地方,所以本章节就来给大家介绍一下

步入正题

那么遵循了这个规范又有什么好处呢?

  • 传统 vue 组件,需要安装、引用、注册,三个步骤后才能使用组件。easycom 将其精简为一步
  • 只要组件安装在项目的 components 目录下或 uni_modules 目录下,并符合 components/组件名称/组件名称.(vue|uvue) 就可以不用引用、注册,直接在页面中使用

目录结构注意:当同时存在 vue 和 uvue 时,uni-app 项目优先使用 vue 文件,而 uni-app x 项目优先使用 uvue 文件

好了,知道了 UniApp 中有这么一个规范之后,我们来试一下,看是不是就可以如此简单的使用自定义组件了

  • 首先我们在项目的 components 目录下创建一个 ITButton 文件夹
  • 然后在 ITButton 文件夹下创建一个 ITButton.vue 文件

ITButton.vue

vue 复制代码
<template>
	<view :class="['it-btn', type]">
		<slot></slot>
	</view>
</template>

<script>
	export default {
		props: {
			type: {
				type: String,
				default: 'default'
			}
		},
		methods: {

		}
	}
</script>

<style>
	.it-btn {
		width: 400rpx;
		height: 150rpx;
		line-height: 150rpx;
		font-size: 40rpx;
		text-align: center;
	}

	.default {
		background-color: gray;
	}

	.warn {
		background-color: red;
	}

	.primary {
		background-color: deepskyblue;
	}
</style>

到这,我们自定义组件创建好了,官方介绍,只要我们遵循了这个规范,就可以不用引用、注册,直接在页面中使用,那么我们就来试一下:

  • 在 index.vue 中使用

index.vue

vue 复制代码
<template>
	<view>
		<ITButton type="primary">我是自定义按钮哦</ITButton>
	</view>
</template>
  • 然后我们运行一下,看看效果
  • 很完美哦,我们就不用引用、注册,就可以直接在页面中使用了
  • 可以根据 type 的不同,来设置不同的样式,这样就可以实现一个按钮,多种样式的效果了
  • 我这个组件已经实现了,好了本文就到这里,下一篇文章我们就来写项目了

End

  • 如果你有任何问题或建议,欢迎在下方留言,我会尽快回复
  • 如果你觉得本文对你有帮助,欢迎点赞、收藏,你的支持是我写作的最大动力
相关推荐
星光一影1 天前
美容/心理咨询/问诊/法律咨询/牙医预约/线上线下预约/牙医行业通用医疗预约咨询小程序
mysql·小程序·vue·php·uniapp
宠友信息4 天前
打造可持续增长的垂直社区:仿小红书平台功能体系与架构深度解析
java·微服务·微信小程序·springboot·uniapp
一点晖光5 天前
微信小程序输入框光标从中间删除跳到最后bug解决
微信小程序·uniapp·ios光标
郑州光合科技余经理12 天前
基于PHP:海外版同城O2O系统多语言源码解决方案
java·开发语言·git·spring cloud·uni-app·php·uniapp
脾气有点小暴13 天前
uniapp通用递进式步骤组件
前端·javascript·vue.js·uni-app·uniapp
脾气有点小暴13 天前
详解 HTML Image 的 mode 属性:图像显示模式的灵活控制
前端·html·uniapp
脾气有点小暴13 天前
uniapp通用单张图片上传组件
前端·javascript·vue.js·uni-app·uniapp
Light6013 天前
用一个 Vue 中间件统一 UniApp 与 Taro:契约驱动的双栈方案
vue.js·uni-app·uniapp·taro·vue中间件·跨端适配·契约驱动
万岳软件开发小城14 天前
教育APP/小程序开发标准版图:课程、题库、直播、学习一站式梳理
大数据·php·uniapp·在线教育系统源码·教育app开发·教育软件开发
济南壹软网络科技有限公司14 天前
挑战全球高并发:壹软科技2025新版盲盒源码的“国际合规与弹性架构”解析
数据库·php·uniapp·盲盒源码