当前位置: 首页 > news >正文

vue.js组件和传值以及微信小程序组件和传值

微信小程序组件以及vue.js组件

  • 一.微信小程序组件引用
    • 1.创建组件Component
    • 2.页面组件引用
    • 3.组件传值
      • 3.1 父视图传值到子组件 (父---->子)
      • 3.2 子组件传值给父组件 (子---->父)
      • 3.3 父组件方法传递到子组件
    • 4. 界面之间的传值
      • 4.1 正向传值
      • 4.2 反向传值
  • 二. uniapp组件的引用
    • 1. 组件创建以及引用
    • 2. 组件的传值
      • 2.1 父组件传值到子组件
      • 2.2 子组件传值或者方法到父组件
    • 3. 页面传值
      • 3.1 页面正向传值
      • 3.2 反向传值
  • 总结

一.微信小程序组件引用

1.创建组件Component

 创建dx.js为子组件

2.页面组件引用

  先创建parent父组件页面, 在parent.json中注册组件
"usingComponents": {"component-tag-dx" : "/pages/shengyi/dx/dx",},

在parent.wxml中引用

<component-tag-dx ></component-tag-dx>

3.组件传值

3.1 父视图传值到子组件 (父---->子)

在子组件中dx.js声明要接受的参数

// 这是子组件dx.js
Component({// 组件的属性列表properties: {// 例如滚动视图高度scrollViewH: {type: String,value: '100%'},}
})// 在接受到值以后可以直接在dx.wxml中使用,同样也可以直接通过this.properties.scrollViewH获取到该值

在父组件中进行传值

<!-- 这是父组件parent.wxml -->
<component-tag-dx scrollViewH="90%"></component-tag-dx>

3.2 子组件传值给父组件 (子---->父)

 需要再子组件中通过triggerEvent方法进行传值
methods: {//子组件 发生点击事件时触发handleItemTap (e) {// 1 获取点击的索引const { index } = e.currentTarget.dataset;// 2 触发 父组件中的事件,传递数据给父组件  把当前点击的index数据传给父组件this.triggerEvent("tabsItemChange", { index: index });}

在父组件中需要通过bind绑定子组件返回的这个方法,进而拿到传过来的数据

<component-tag-dx bind:tabsItemChange="tabsItemChange" scrollViewH="90%"></component-tag-dx>
 // 获取从子组件传回来的数据tabsItemChange (e) {//  获取子组件传过来的数据const name = e.detail },

3.3 父组件方法传递到子组件

	例如: 父组件中有3个按钮可以进行切换(按钮1,按钮2, 按钮3)我需要在父组件中点击这3个按钮,把方法传递到子组件中当子组件监听到父组件点击以后,子组件接收方法并且进行页面刷新操作

 	实现:子组件无法监听父组件的方法,父组件也无法把方法传递到子组件中,只能通过传值到子组件然后子组件监听值的改变来判断父组件是否进行了点击
// dx.js子组件Component({
properties:{// 1.首先接收父组件传递过来的值parentIndex: {type: String,value: ''}
},
observers:{// 2. 在监听值是否发生了改变'parentIndex': function (index) {// 如果index == 0说明父组件点击了第一个按钮(按钮1)if (index == 0) {// 在这里执行操作this.setData({triggered: true,})}}
}})
父组件中需要做的操作,在parent.js中,拿到3个按钮点击的索引
  // 这个方法是3个按钮点击事件tabClick(e) {let index = e.currentTarget.dataset.indexthis.setData({currentClickIndex: index})},
<!-- 把点击事件的索引传递过去 -->
<component-tag-dx parentIndex="{{currentClickIndex}}"></component-tag-dx>

4. 界面之间的传值

4.1 正向传值

// 正向传值,可以直接从URL中进行拼接,
// 但是如果传递复杂的对象,或者参数较多时,采用这种方式
// 这是页面 Awx.navigateTo({url: '页面B路径',success: function(res) {// 通过eventChannel向被打开页面传送数据res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'test' })}})// 页面B接收
Page({onLoad: function(option){const eventChannel = this.getOpenerEventChannel()// 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据eventChannel.on('acceptDataFromOpenerPage', function(data) {console.log(data)})}
})

4.2 反向传值

	// 这是页面 Awx.navigateTo({url: '页面B路径',events: {// 此处用来监听页面B的回调值someEvent: function (data) {let item = that.data.curretItemlet index = that.data.curretItemIndex},}})// 这是页面 B,在onLoad方法中实现就行Page({onLoad: function(option){const eventChannel = this.getOpenerEventChannel()// 把值反向传给界面AeventChannel.emit('someEvent', {data: 'test'});}})// 注意如果是需要点击某个按钮返回,那可以把这个方法放到按钮的点击事件中

二. uniapp组件的引用

1. 组件创建以及引用

 直接可以右键创建组件vue,组件可以不注册到page.json界面
// 这里父组件.vue
// 通过路径导入组件
import basics from '../components/CreatBasics';
export default {// 注册组件,注意不要用bas-ics这种格式注册components: {basics: basics},
}
// 在html中直接引用
// <basics></basics>

2. 组件的传值

uniapp组件传值官网: https://uniapp.dcloud.net.cn/tutorial/vue-components.html

2.1 父组件传值到子组件

 /******  这是父组件的html *******/ // ReceivingCommissionOne是引用的子组件
<ReceivingCommissionOne :disposeCode="disposeCode"</ReceivingCommissionOne>/I****** 在子组件中声明要接收的属性 *******/ 
export default {props: {// 编码disposeCode: {type: String,default: ''},},mounted() {console.log(this.disposeCode)},
}

2.2 子组件传值或者方法到父组件

/*******  这是子组件  ***********/
// 这是某一个按钮的点击事件
backList() {// {} 可以携带任意参数this.$emit('backList', {})
},/*******  这是父组件的html  ***********/
<ReceivingCommissionOne  @backList="backList" :disposeCode="disposeCode" </ReceivingCommissionOne>
// 实现方法:		
backList(data) {}

3. 页面传值

3.1 页面正向传值

/****** 这是页面1 ******/
nextPage() {uni.navigateTo({url: '页面B路径',success: (succ) => {// 在成功的方法中,传值{}succ.eventChannel.emit('changeEdit', {dataDetail: 'text'})}})
}/****** 这是页面2接收 ******/
onLoad(open) {// 接收页面的值const eventChannel = this.getOpenerEventChannel()eventChannel.on('changeEdit', function(data) {}
}

3.2 反向传值

/****** 这是页面1 ******/
nextPage() {uni.navigateTo({url: '页面B路径',events: {// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据someEvent: function(data) {console.log(data)}},})
}/****** 这是页面2接收 ******/
onLoad(open) {// 传值给界面1const eventChannel = this.getOpenerEventChannel()eventChannel.emit('someEvent', {data: 'data from test page for someEvent'});
}

总结

只是平时工作中记录小程序与uniapp的组件传值

相关文章:

vue.js组件和传值以及微信小程序组件和传值

微信小程序组件以及vue.js组件 一.微信小程序组件引用1.创建组件Component2.页面组件引用3.组件传值3.1 父视图传值到子组件 &#xff08;父---->子&#xff09;3.2 子组件传值给父组件 (子---->父)3.3 父组件方法传递到子组件 4. 界面之间的传值4.1 正向传值4.2 反向传值…...

c语言编程题(函数)

1编写函数将一个仅包含整数&#xff08;可能为负&#xff09;的字符串转换为对应的整数 方法一使用标准库函数 atoi atoi 函数是C语言标准库中的一个函数&#xff0c;用于将字符串转换为整数。 代码&#xff1a; #include <stdio.h> #include <stdlib.h> // 包含…...

华为eNSP:QinQ

一、什么是QinQ&#xff1f; QinQ是一种网络技术&#xff0c;全称为"Quantum Insertion"&#xff0c;也被称为"Q-in-Q"、"Double Tagging"或"VLAN stacking"。它是一种在现有的VLAN&#xff08;Virtual Local Area Network&#xff0…...

JAVA基础-多线程线程池

文章目录 1. 多线程1.1什么是多线程&#xff08;1&#xff09;并发和并行&#xff08;2&#xff09;进程和线程 1.2多线程的实现方式1.2.1 方式一&#xff1a;继承Thread类1.2.2 方式二&#xff1a;实现Runnable接口1.2.3方式三: 实现Callable接口 1.3 常见的成员方法1.3.1 设置…...

HarmonyOS 沉浸式状态实现的多种方式

1. HarmonyOS 沉浸式状态实现的多种方式 HarmonyOS 沉浸式状态实现的多种方式 1.1. 方法一 1.1.1. 实现讲解 &#xff08;1&#xff09;首先设置setWindowLayoutFullScreen(true)&#xff08;设置全屏布局&#xff09;。   布局将从屏幕最顶部开始到最底部结束&#xff0c…...

Python3.11.9下载和安装

Python3.11.9下载和安装 1、下载 下载地址&#xff1a;https://www.python.org/downloads/windows/ 选择版本下载&#xff0c;例如&#xff1a;Python 3.11.9 - April 2, 2024 2、安装 双击exe安装 3、配置环境变量 pathD:\Program Files\python3.11.9...

简简单单的UDP

前言 上一篇了解了TCP的三次握手过程&#xff0c;目的、以及如何保证可靠性、序列号与ACK的作用&#xff0c;最后离开的时候四次挥手的内容&#xff0c;这还只是TCP内容中的冰山一角&#xff0c;是不是觉得TCP这个协议非常复杂&#xff0c;这一篇我们来了解下传输层另外一个协…...

减少 try...catch,定义全局统一异常处理器!

前言 软件开发springboot项目过程中&#xff0c;不可避免的需要处理各种异常,spring mvc 架构中各层会出现大量的try {...} catch {...} finally {...}代码块&#xff0c;不仅有大量的冗余代码&#xff0c;而且还影响代码的可读性。这样就需要定义个全局统一异常处理器&#x…...

多点支撑:滚珠导轨的均匀分布优势!

滚珠导轨的滚珠稳定性可以有效保持滚珠导轨的稳定运行&#xff0c;减少滚珠脱落的风险&#xff0c;确保设备的长期稳定性和可靠性。事实上&#xff0c;滚珠导轨的滚珠稳定性主要依赖于以下几个方面&#xff1a; 1、精密的制造工艺&#xff1a;滚珠导轨的导轨和滑块通常采用高精…...

电气火灾探测器在商场火灾隐患监测和火灾预防中的应用

徐悦 安科瑞电气股份有限公司 近年来&#xff0c;全国火灾事故频发&#xff0c;尤其是在大型商场等公共场所&#xff0c;火灾造成了巨大的人员伤亡和财产损失。以南京金盛百货中央门店火灾为例&#xff0c;该起事故暴露了商场在电气安全、消防管理方面的重大隐患&#xff0c;…...

速盾:如何有效防止服务器遭受攻击?

服务器攻击是网络安全中常见的问题&#xff0c;但我们可以采取一系列的措施来有效防止服务器的遭受攻击。以下是一些常见的防御措施&#xff1a; 更新和维护服务器软件&#xff1a;及时更新操作系统、应用程序以及安全补丁&#xff0c;以确保最新版本的软件没有已知的漏洞。同时…...

【今日更新】使用Python辅助处理WebGIS

Linux发行版本: Debian GNU/Linux 12 (bookworm)操作系统内核: Linux-6.1.0-18-amd64-x86_64-with-glibc2.36Python版本: 3.11.2 1.使用Python处理MapServer配置文件Mapfile 创建、分析、修改和格式化的python库 MapServer Mapfiles。 Python 2和3 兼容 纯Python-无MapServer依…...

Linux 消息队列

在Linux中&#xff0c;线程间消息队列可以通过使用System V消息队列或POSIX消息队列来实现。 使用System V消息队列&#xff1a; System V消息队列是一种基于IPC&#xff08;Inter-process Communication&#xff0c;进程间通信&#xff09;的通信机制&#xff0c;可以用于进程…...

十大经典排序算法-冒泡算法详解介绍

1、十大经典排序算法 排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序&#xff0c;内部排序是数据记录在内存中进行排序&#xff0c;而外部排序是因排序的数据很大&#xff0c;一次不能容纳全部的排序记录&#xff0c;在排序过程中需要…...

delphi 编译多语言工程 error RC2104 : undefined keyword or key name:

Delphi 10.3中建立多语言工程&#xff0c;编译时出现错误&#xff1a;error RC2104 : undefined keyword or key name: 出现错误的的文件是.rc文件&#xff0c;出现错误的位置是 System_JSONConsts_SInvalidJavascriptQuote, L"Invalid JavaScript string quote character…...

[python] 如何debug python脚本中C++后端的core dump

文章目录 Debug过程Reference Debug过程 另外&#xff1a;对于core dump: gdb版本是>7&#xff0c;gdb从版本7开始支持对Python的debug。确保你的系统中安装了 GDB 调试器和对应版本的 Python 调试信息包&#xff08;例如 python-dbg 或 python-debuginfo&#xff09;。 #…...

Ecmascript(ES)标准

Ecmascript&#xff08;ES&#xff09;标准 ECMAScript&#xff08;通常简称为 ES&#xff09;是一种标准化的脚本语言&#xff0c;由 Ecma International 通过 ECMA-262 标准定义。ECMAScript 是 JavaScript 的规范版本&#xff0c;几乎所有的现代浏览器和许多服务器端环境&a…...

易泊车牌识别相机:4S 店的智能之选

在当今数字化时代&#xff0c;科技的进步不断为各个行业带来更高效、便捷的解决方案。对于 4S 店来说&#xff0c;易泊车牌识别相机的出现&#xff0c;无疑为其运营管理带来了全新的变革。 一、易泊车牌识别相机的强大功能 易泊车牌识别相机以其卓越的性能和精准的识别能力&…...

Webpack 深度解析与实战指南

文章目录 前言一、安装于基本配置安装Webpack 和 Webpack CLI创建基本配置文件 二、加载器常见的加载器配置加载器 三、插件&#xff08;Plugins&#xff09;常用的插件配置插件 四、性能优化缓存代码分割Tree Shaking压缩 五、开发服务器安装服务器配置服务器启动服务器生产环…...

【RabbitMQ】06-消费者的可靠性

1. 消费者确认机制 没有ack&#xff0c;mq就会一直保留消息。 spring:rabbitmq:listener:simple:acknowledge-mode: auto # 自动ack2. 失败重试机制 当消费者出现异常后&#xff0c;消息会不断requeue&#xff08;重入队&#xff09;到队列&#xff0c;再重新发送给消费者。…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件&#xff0c;这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下&#xff0c;实现高效测试与快速迭代&#xff1f;这一命题正考验着…...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构&#xff1a;基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中&#xff08;图1&#xff09;&#xff1a; mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...