首页 > 其他分享 >【UniApp】-uni-app-自定义组件

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

时间:2023-12-21 13:22:42浏览次数:41  
标签:UniApp vue 自定义 app 组件 uni

前言

  • 经过上个章节的介绍,大家可以了解到 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

<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

<template>
	<view>
		<ITButton type="primary">我是自定义按钮哦</ITButton>
	</view>
</template>
  • 然后我们运行一下,看看效果

  • 很完美哦,我们就不用引用、注册,就可以直接在页面中使用了
  • 可以根据 type 的不同,来设置不同的样式,这样就可以实现一个按钮,多种样式的效果了
  • 我这个组件已经实现了,好了本文就到这里,下一篇文章我们就来写项目了

End

  • 如果你有任何问题或建议,欢迎在下方留言,我会尽快回复
  • 如果你觉得本文对你有帮助,欢迎点赞、收藏,你的支持是我写作的最大动力

标签:UniApp,vue,自定义,app,组件,uni
From: https://www.cnblogs.com/BNTang/p/17918769.html

相关文章

  • 21.获取App包和启动页
    1.adb连接模拟机adbconnect127.0.0.1:75552.查看连接状态adbdevices3.查看模拟器上所有的app包adbshellpmlistpackages4.查看要启动app的包名adbshellpmlistpackages|findstrwework5.抓取详细日志(1代表次数)adbshellmonkey-p"com.tencent.wework"-v......
  • 报错: Failed to execute ‘append‘ on ‘FormData‘: 2 arguments required, but on
    未能对“FormData”执行“append”:需要2个参数,但仅存在1个参数。  letformData=newFormData()本来formData.append(‘list’,JSON.stringify(arr))  改成下边这样了,就报错了formData.append(JSON.stringify(arr))正确的写法应该是: fd.append("参数名",值") ;我们......
  • Spring Boot原理分析 | SpringApplication、Yaml、Properties
    ......
  • uniapp开发——未登录登录失效页面登录后页面回调的处理
    刚开始默认沿用了前边小程序的做法,即在单击事件或者onHide函数中缓存标识,onShow中读取标识,对必要的业务逻辑进行重新请求。具体代码如下:微信小程序登录后页面回调的处理方案:1.缓存回调刷新标识:单击事件中设置:methods:{onSubmit(){this.setData({i......
  • 【代码块】-winform 获取控件属性和事件、自定义控件的自定义方法
    整理代码块代码块整理后存储,供后期使用C#获取属性,获取事件逻辑Controlcontrol=Controls.Find("button1",true)[0];//获取属性objecto=control.GetType().GetProperty("PropertyName").GetValue(control,null);//获取事件System.Reflection.EventInfoev=contr......
  • Grafana 自定义数据源支持 RESTful API 查询
    背景数据爆炸的时代,信息化步伐越来越快,接入互联网的服务越来越多。随着业务迭代变更越来越复杂化,需求/产品者对系统的要求越来越高,对业务走势及健康状态需要更直观的感知。这意味着我们需要随时能够“看见”系统的状态,对系统/业务的实时监控以及可视化是技术演进的必然。Grafana......
  • c# - 如何在自定义 System.Text.Json JsonConverter 中使用默认序列化?
    我正在写一个 custom System.Text.Json.JsonConverter 将旧数据模型升级到新版本。我已覆盖 Read()并实现了必要的后处理。但是,我根本不需要在 Write() 中做任何自定义操作。方法。如果我根本没有转换器,如何自动生成默认序列化?显然我可以使用不同的 JsonSerializerOption......
  • 关于Chart控件 C# 自定义
    usingSystem;usingSystem.Collections.Generic;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms.DataVisualization.Charting;namespacePieChartLibrary{publicclassViewProp{publ......
  • uniapp app安卓、ios文件选择 (上传pdf word video img )等
    1、hybrid 必须放在项目根目录下,不然会调用失效:如图 2、建立nvue 子窗体  代码:1<template>2<viewclass="nvue">3<textclass="popup-item"@click="clickfun">选择文件</text>4<textclass="ddddd......
  • 解决Qt6“QApplication file not found”和“无法运行 rc.exe”错误
    最近开始学习Qt(趟坑),买了一本《C++GUIQt4编程》,照着书上的例子做,第一个就报编译不过,报错信息:'QApplication'filenotfound 查了下Qt助手, 使用qmake,需要加一句:QT+=widgets原因在于QApplication在Qt6中被放在了QtWidgets下,因此需包含widgets,当然最好的方式是根据Qt版本......