1 Framework inner error (expect END descriptor with depth 1 but get another
小程序在用组件进行深层嵌套复用时突然报错
首先说一下引用的组件结构:
shopDesc页面和comment页面——》引用 detailFooter组件——》引用addToCart组件——》引用productSpec组件
这个是商品详情页面引用了detalFooter组件:
这个是我重复调用的组件,因为在商品详情里面,调用是没问题的,但是在评论页面,再调用一次detalFooter的时候,报了以上的错误。
经过发现,找到了问题点,是我detalFooter组件里面,引用的addtocart组件的一个对象引起的,一传这个getAll,就报错,说明错误点是发生在addToCart组件接收处理的有问题,于是打开addToCart组件。
其实这个值,在detalFooter组件里已经接收到了,并且能打印出来,而且类型也都是Object,没有问题,但是这个就在报错,
经过排查发现,如果想要评论页面引用的不报错,
addToCart组件的这个地方就不能写,但是这个地方不写,商品详情页的引用就报错了;
后来抱着试试的想法,在addToCart组件的this.getDetailFun事件里,重新赋值了这个,用来传给下一个组件。
在addToCart.wxml里面,也就是写了就报错的地方,改成了这样子重新接收了一下,然后就好了
是呢,就是这样就好了,好坑呀,解决了快一天了。但是为什么单独引用的时候,没有问题,但是二次引用就报错了,就不知道是因为什么了,如果有知道原因的小伙伴,欢迎告诉一下原因哈~