uniapp组件的创建和使用

创建组件文件夹

项目根目录下创建components文件夹

创建组件文件

根目录下的组件文件夹如果只是h5和app的话,随便取名就行,例如components文件夹

各大小程序可以参考如下官方给出的目录名

js 复制代码
┌─wxcomponents                  微信小程序自定义组件存放目录
│   └──custom.vue                   微信小程序自定义组件
│
├─mycomponents                  支付宝小程序自定义组件存放目录
│   └──custom.vue                   支付宝小程序自定义组件
│
├─swancomponents                百度小程序自定义组件存放目录
│   └──custom.vue                   百度小程序自定义组件
├─pages
│  └─index
│		└─index.vue
│
├─static
├─main.js
├─App.vue
├─manifest.json
└─pages.json

因为我这个项目要兼容微信小程序和h5以及app的,h5和app任意就行,微信小程序需要为wxcomponents,因此我这里在根目录下创建wxcomponents文件夹

右键wxcomponents文件夹,点击新建组件,我这里起名叫mycomVue点击创建即可,内容如下:

我这里是vue3版本的setUp语言,vue2的换成vue2的语法就好

js 复制代码
<template>
	<button @click="btnClick">点击向父组件发送数据</button>
	<text>父组件传来的数据为:{{num}}</text>
</template>

<script setup>
	import {
		defineEmits,
		defineProps
	} from 'vue';
	const props = defineProps(['num']) // 这里接收的是父组件向子组件发送的数据

	// 子组件享父组件发送事件
	const emit = defineEmits(['customClick']);
	const btnClick = () => {
		emit('customClick', '我是子组件');
	};
</script>

<style>
</style>

页面引入

pages/index/index.vue使用该组件

js 复制代码
<template>
	<div>
		<button @click="hahaha">跳转</button>
		<!-- 给子组件传递数据num为1 -->
		<mycomVue num="1" @customClick="customClick"></mycomVue>
	</div>
</template>

<script setup>
	import mycomVue from '../../wxcomponents/mycom.vue';
	const customClick = (e)=>{
		console.log('父组件接收到数据为:',e);
	}
</script>

<style scoped>

</style>

然后运行到微信小程序和h5和app上面发现都可以兼容了

相关推荐
良逍Ai出海7 小时前
Build in Public|为什么我开始做一款相册清理 App(听说有竞品年收益40W)
ios·uni-app·ai编程·coding
2501_915106322 天前
iOS App 测试工具全景分析,构建从开发调试到线上监控的多阶段工具链体系
android·测试工具·ios·小程序·uni-app·iphone·webview
dchen772 天前
uniapp实现上拉刷新和下拉刷新的两种方式
uni-app
FinelyYang2 天前
uniapp+unipush2.0+WebRTC实现h5一对一视频通话
uni-app·音视频·webrtc
天蓝色的鱼鱼2 天前
mescroll老用户亲测z-paging:这些功能让我果断切换!
前端·uni-app
anyup2 天前
🔥100+ 天,已全面支持鸿蒙!uView Pro 近期更新盘点及未来计划
前端·uni-app·harmonyos
半兽先生3 天前
uniapp高性能ui框架uni-ui
ui·uni-app
qq_316837753 天前
uniapp 观察列表每个元素的曝光时间
前端·javascript·uni-app
iOS阿玮3 天前
打个广告,帮忙招一个iOS开发的扛把子~
uni-app·app·apple
Cerrda3 天前
🌟让你的uniapp应用拥有更现代的交互体验,一个支持滚动渐变透明的导航栏组件🌟
uni-app