场景:条件是已引入子组件,且完成子组件的局部注册,在对话框中dialog使用了子组件。问题是,当调用子组件的某个方法时,即用
this.$refs.xxx.init();
报错子组件undefined。
解决办法:用debugger模式调试半天,仍然不行。又仔细检查了引入的路径、注册和使用的语法,均未发现问题。最后灵光一闪:是不是因为我在调用this.$refs.xxx.init();
时对话框没有打开,所以子组件无法起作用呢。测试了一下,果然是的。过程耽误了我两个小时,一度怀疑自己的语法写错了,但又找不到错,记录一下。