一、问题的提出
在vue文件中给一个组件设置了ref属性,目的是后续代码中能够触发该组件上的一些自带方法:
<q-uploader :url="url" ref="attachuploader" />
这样在后续代码中就可以触发这个组件的自带方法,如:
this.$refs.attachuploader.reset();
但始终无法执行以上方法,说reset不是一个合法的函数(TypeError: this.$refs.attachuploader.reset is not a function).....
很郁闷,在其他vue中有过以上用法,而且都是成功的,为什么这个vue始终就不对呢?
二、解决办法
“砖家”说遇到问题要查文档,于是翻出ref的说明文档,当看到其中这句话时“当v-for用于元素或组件的时候,引用信息将是包含.....”,立马恍然大悟:我把上传组件放在了v-for中!!!
立马把组件q-uploader挪到v-for的外面,然后一切就OK了。
网友评论