// 获å–çˆ¶ç»„ä»¶çš„å‚æ•°ï¼Œå› 为支付å®å°ç¨‹åºä¸æ”¯æŒprovide/inject的写法 // this.$parent在éžH5ä¸ï¼Œå¯ä»¥å‡†ç¡®èŽ·å–到父组件,但是在H5ä¸ï¼Œéœ€è¦å¤šæ¬¡this.$parent.$parent.xxx // 这里默认值ç‰äºŽundefined有它的å«ä¹‰ï¼Œå› ä¸ºæœ€é¡¶å±‚å…ƒç´ (组件)çš„$parent就是undefined,æ„味ç€ä¸ä¼ name // 值(默认为undefined),就是查找最顶层的$parent export default function $parent(name = undefined) { let parent = this.$parent; // 通过while历éï¼Œè¿™é‡Œä¸»è¦æ˜¯ä¸ºäº†H5需è¦å¤šå±‚è§£æžçš„问题 while (parent) { // 父组件 if (parent.$options && parent.$options.name !== name) { // 如果组件的nameä¸ç›¸ç‰ï¼Œç»§ç»ä¸Šä¸€çº§å¯»æ‰¾ parent = parent.$parent; } else { return parent; } } return false; }