vue slot插槽传值,插槽嵌套传值报错Converting circular structure to JSON解决

news/2024/11/8 0:39:25/

插槽之间传值用到了slot-scope(作用域插槽)

子组件<slot name="menuBtn"  :data="{name:'zj'}"></slot>
父组件
<div slot="menuBtn" slot-scope="scope"><span>{{scope.data.name}}</span>
</div>

如果插槽嵌套这样传值会报错

今天写element的表格碰到了插槽嵌套传值

子组件
<el-table-column v-if="tableOption.menu" align="center" fixed="right":width="tableOption.menuWidth ? tableOption.menuWidth : 270">
这里是第一层插槽<template slot-scope="scope"><div class="btn-boxs">
这里是第二层插槽<slot name="menuBtn"  :data="scope"></slot></div></template>
</el-table-column>
父组件
<div slot="menuBtn" slot-scope="scope"><span>{{scope}}</span>
</div>

浏览器会报错

网上搜了一下说是存在循环引用,需要改成深拷贝

<slot name="menuBtn"  :data=" JSON.parse(JSON.stringify(scope))  "></slot>

还是报错,最后解决办法为

子组件
<el-table-column v-if="tableOption.menu" align="center" fixed="right":width="tableOption.menuWidth ? tableOption.menuWidth : 270">
这里是第一层插槽<template slot-scope="scope"><div class="btn-boxs">
这里是第二层插槽<slot name="menuBtn"  :data="scope.row"></slot></div></template>
</el-table-column>

不能把对象全传过去,可以传里面用到的属性,或者这样传都没问题

 <slot name="menuBtn"  :data="{id:scope.row.id}"></slot>


http://www.ppmy.cn/news/731963.html

相关文章

张量Tucker分解

Tucker分解是一种高阶的主成分分析&#xff0c;它将一个张量表示成一个核心&#xff08;core&#xff09;张量沿每一个mode乘上一个矩阵。HOSVD分解又称作Tucker分解。由Tucker在1936年提出。HOSVD全名为high order SVD&#xff0c;即高阶的SVD。所以我们要先了解一下SVD原理&a…

vue插槽传值(多个插槽和单个插槽)

多个插槽&#xff1a; 子组件&#xff1a; <template><div><slot></slot><slot name"secondslot" :text"postText" text2"哈哈哈哈哈2"></slot></div> </template> 使用&#xff1a; <r…

sd卡受损怎么修复?这个技巧一定要看

sd卡受损怎么修复&#xff1f;sd卡是一种常用的存储设备&#xff0c;但随着使用时间的推移&#xff0c;难免会遇到sd卡损坏的情况&#xff0c;从而造成数据丢失&#xff0c;今天就给大家分享下恢复损坏sd卡数据的方法&#xff0c;一起来了解下。 首先我们利用读卡器将sd卡连接到…

【Vue】 插槽

目录 1 插槽1.1 默认插槽1.2 插槽设置默认内容1.3 具名插槽1.4 具名与默认插槽同时使用1.5 动态插槽名1.6 作用域插槽1.6.1 默认作用域插槽1.6.2 具名作用域插槽1.6.3 具名与默认 作用域插槽同时使用 1 插槽 子组件写插槽位置 父组件写内容放入插槽 插槽内容无法访问子组件的…

vue2---插槽

目录 2 插槽 2.1 概念的基本使用 2.1.1 概念 2.2.2 插槽的基本使用 2.2.3 具名插槽&#xff08;带有name的插槽&#xff09; 2 插槽 2.1 概念的基本使用 2.1.1 概念 插槽&#xff08;Slot)是vue为组件的封装者提供的能力。允许开发者在封装组件时&#xff0c;把不确定的…

vue2 ---- 插槽

什么是插槽 子组件提供给父组件的占位符&#xff0c;用 slot 元素来表示&#xff0c; 父组件可以在这个占位符里面填充各种模板代码。 1. 匿名插槽&#xff1a; 父组件引入子组件&#xff0c;在子组件内留 标签&#xff0c; 就可以在父组件中的子组件标签中写入内容。 例…

不懂就要问,怎么辨别抖音手机卡真假?

当我们在刷抖音时&#xff0c;总能看到一些关于手机卡/流量卡的广告&#xff0c;这些套餐看起来都是超级便宜&#xff0c;有的套餐9元180G&#xff0c;有的套餐19元230G&#xff0c;那么&#xff0c;这些卡有没有套路呢&#xff0c;怎么辨别抖音手机卡真假&#xff1f;接下来&a…

[Vue] 组件卡槽的使用

SLOT 例子 参考代码&#xff1a;code实现功能&#xff1a; 两种方法实现父组件往子组件中传入DOM节点 1. 属性传值&#xff08;不推荐&#xff09; 2. Slot插槽使用 &#xff08;推荐&#xff09;属性传值&#xff08;不推荐&#xff09; 思路&#xff08;注意&#xff1a;…