uni-app 使用easycom引入自定义组件,出现Uncaught RangeError: Maximum call stack size exceeded

在使用uni-app开发微信小程序时,遇到UncaughtRangeError: Maximum call stack size exceeded错误。问题源于在c-header.vue组件内部误用了自身组件<c-header>。删除此递归引用并保留其内容后,问题得到解决。该博客提醒开发者注意避免组件的递归引用,以防止栈溢出错误。
摘要由CSDN通过智能技术生成

利用uni-app开发微信小程序,借助它的easycom定义一个全局组件。

按照官方说明进行开发,出现了Uncaught RangeError: Maximum call stack size exceeded 这个错误。

目录结构如下:

c-header.vue内容如下:

<template>
    <view class="container">
        <c-header>
            <view class="login-top-header">
            	<navigator class="float-left" url="./loginAuth">
            		<text class="float-right login-top-header-margin-left circle"><text style="font-size: 30rpx;">登录</text></text>	
            	</navigator>
            	
            	<navigator class="intro float-right login-top-label login-top-header-margin-right" url="../personCenter/personCenter">
            		<image class="img login-arrow-img " src="/static/img/arrow_login.png" mode="aspectFill"></image>
            	</navigator>
            </view>
        </c-header>
    </view>
</template>

<script>
	export default {
		// name: "cheader",
		data() {
			return {
				
			};
		},
		// 此处定义传入的数据
		props: {
		}
		
	}
</script>

<style scoped>	
	.login-img-scroll {
		width: 100%;
		height: 80%;
		margin-top: 30rpx;
	}
	
	.login-top-header {
		background-color: white; 
		height: 100rpx;
		border:1px solid grey;
		border-radius:100rpx;
	}
	
	.login-top-header-margin-right {
		margin-right: 15rpx;
	}
	
	.login-top-header-margin-left {
		margin-left: 15rpx;
	}

</style>

pages.json里面如下:

看提示应该是栈溢出,起初以为是文件太多,没有压缩导致的,后经仔细检查,

发觉是因为在c-header.vue里面写了 <c-header></c-header>导致了递归引用。去掉 <c-header></c-header> 保留里面的内容即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值