首页 > 其他分享 >第三方组件及计算属性传参的问题解决方式

第三方组件及计算属性传参的问题解决方式

时间:2023-11-08 16:56:44浏览次数:45  
标签:传参 函数 item beforeUpload 组件 fullName 第三方 属性

1. 前言

唉,好想玩滋嘣。

2. 计算属性直接传参接收不到

表格数据某一列需要用的计算属性时,模板中使用计算属性 fullName 就会直接调用 fullName 函数,而在模板中 fullName(item) 相当于fullName()(item),此处为函数柯里化。

<el-table-column label="名称" align="center" min-width="20%">
<template slot-scope="scope">
  <p
	v-for="(item, index) in scope.row.dataList "
	:key="item.id"
>
	{{ fullName(item) }}
  </p>
</template>
</el-table-column>
// ...
computed: {
// fullName(param) 里接收到的是组件实例对象!
	fullName() {
		return item=> {
			return item.firstName + item.lastName
		}
	}
}

3. 第三方组件的事件想要传参会立即执行且会被覆盖问题

封装好的组件的事件回调函数想要传其它参数,事件的回调直接写:before-upload="beforeUpload('a')" ,不仅会立即执行,还会覆盖默认参数;解决的方式类似:

<el-form-item label="文件:">
  <el-upload
	:action=""
	:before-upload="beforeUpload('a')"
	:file-list="fileList"
>
	<el-button size="small" type="primary">点击上传</el-button>
  </el-upload>
</el-form-item>
// ...
// 上传文件前
beforeUpload(myParams) {
  return file => {
	console.log(file, myParams);
  };
},

:before-upload="beforeUpload('a')",引号内为事件的回调,应该是一个函数,而不是函数的执行,但这里我们执行 beforeUpload 接收想要传递的参数,并直接返回一个函数,作为新的事件回调,沿着作用域链就可以拿到 myParams 啦。

标签:传参,函数,item,beforeUpload,组件,fullName,第三方,属性
From: https://www.cnblogs.com/pupyy/p/17817765.html

相关文章

  • vue3异步组件
    父组件中,子组件的加载一般是按照先后顺序加载的,子组件加载后才会加载父组件。一个页面的子组件很多,由于会先加载子组件,那么父组件可能会出现比较长的白屏等待时间大型项目,可能需要拆分应用为更小的块,并仅在需要时再从服务器加载相关组件Vue提供defineAsyncComponent方法:import......
  • vuejs3.0 从入门到精通——Element Plus 组件库
    ElementPlus组件库一、ElementPlus 基于Vue3,面向设计师和开发者的组件库。二、完整导入https://element-plus.org/zh-CN/guide/quickstart.html#完整引入 如果你对打包后的文件大小不是很在乎,那么使用完整导入会更方便。//main.tsimport{createApp}from'vu......
  • 不同窗口传参
    1.比较常用的就是window.open()1)第一个参数是url,2)第二个参数给新窗口的名字(name),并不是新窗口在窗口显示的title,在窗口下,通过window.name的方式拿到。这里也可以设置_self(在旧窗口打开新窗口),_blank(重新打开新窗口,默认就是该模式)3)第三个参数窗口宽高等想同时......
  • 最全面的移动端UI组件设计详解:下篇
    上一期给大家讲解了《最全面的移动端UI组件设计详解:中篇》,主要分享了:基础组件、表单组件和反馈组件3个部分;这次给大家带来:数据展示组件和其他组件详解,希望你在设计APP、小程序、H5页面中,能熟练使用和理解各种的UI组件,今天给大家总结了关于移动端UI组件,希望可以在工作中帮到你。......
  • 最全面的移动端 UI组件设计详解:上篇
    作为一名UI设计师,我们经常要进行PC端和移动端的设计任务,上一次给大家分享了:《最全Web端UI组件设计详解》,这次给大家带来移动端UI组件设计详情,尤其在我们APP、小程序、H5页面设计中,我们要使用和熟知各种的UI组件,今天给大家总结了关于移动端UI组件,希望可以在工作中帮到你。什么......
  • 6、Flutter 列表组件
    列表有以下分类:1、垂直列表classMyAppextendsStatelessWidget{constMyApp({super.key});@overrideWidgetbuild(BuildContextcontext){returnCenter(child:ListView(children:const[Icon(Icons.search,color:Colors.red,size:50),......
  • probability calculator 商业和免费的组件
    p-ValueCalculatorfortheStudentt-Test(Probability,p-value)http://www.danielsoper.com/statcalc/calc08.aspxStatsarstatisticslibraryhttp://www.simplexar.com/Statsar/Product.aspxProbabilityandStatisticsfor.NETv3.6http://www.webcabcomponents.com/......
  • windows 环境下dev c++安装第三方库
    参考资料https://blog.csdn.net/u011342183/article/details/79823564测试下载第三方库开发文件安装到devc++设置路径选择工具->编译器选项然后导入include路径......
  • C#截图 开源组件库ShareX
    ShareX支持以下几种截图方式,其中全屏功能是指自动截取主屏幕桌面区域的截图(可以配置是否隐藏ShareX窗口、隐藏屏幕虚拟区域等),窗口功能是指截取屏幕中的指定进程的窗口截图(ShareX程序通过调用Windows系统的EnumWindows函数枚举屏幕中的顶层窗口,并动态生成窗口菜单的子菜单)、显示器......
  • InBody 组件 将dom挂载到body
    <template><div><transitionv-bind:name="transName"appear><slot></slot></transition></div></template><script>exportdefault{data(){return{......