首页 > 其他 > 详细

iview报错[Vue warn]: Error in render: "TypeError: ctx.injections.tableRoot.$scopedSlots[ctx.props.column.slot] is not a function"

时间:2021-09-15 20:44:25      阅读:4      评论:0      收藏:0      [点我收藏+]

网上查到的都是同一个,说是因为columns定义了N个slot,但是html中没有使用N个,这个虽然也是原因之一,但是不是我这的原因,我最后发现我的问题原因是:

HTML模板中定义了两个<Table>,table1有slot,table2没有 ,分别包在两个不同的<template>中并通过v-if控件显示哪个,初始是显示table1, 但触发切换条件时,显示table2,但再切换回table1时就会报错,解决方法给两个<Table>加上 key属性,

本质原因,因为没有给table加key属性,导致vue复用了table组件(第一个),当切换到table2时,因为table2的columns并没有定义slot,所以没有报错,但是再切回第一个table1时,会导致报错。

参考: https://cn.vuejs.org/v2/guide/conditional.html#用-key-管理可复用的元素

iview报错[Vue warn]: Error in render: "TypeError: ctx.injections.tableRoot.$scopedSlots[ctx.props.column.slot] is not a function"

原文:https://www.cnblogs.com/johnjackson/p/15268402.html

(0)
(0)
   
举报
评论 一句话评论(0
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!