Vue组件引入报错解决方法

世上唯一不能复制的是时间,唯一不能重演的是人生,唯一不劳而获的是年龄。该怎么走,过什么样的生活,全凭自己的选择和努力。人生很贵,请别浪费!与智者为伍,与良善者同行。Vue组件引入报错解决方法,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

代码异常

vue.runtime.esm.js:587 [Vue warn]: Unknown custom element: <search_ui> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

found in

---> <FormRenderHt> at src\components\FormRender\module\form-ht.vue
       <HTUi> at src\components\FormRender\widget\element\HT.vue
         <ElRow>
           <ElForm> at packages/form/src/form.vue
             <FormRender> at src\components\FormRender\module\form.vue
               <FormRender2> at src\components\FormRender\module\form2.vue
                 <ProductEdit> at src\views\ordercreate\product\productInfoEdit.vue
                   <Index> at src\views\ordercreate\main\index.vue
                     <App> at src\App.vue
                       <Root>

原因分析

  • 组件引入方法有问题,不符合vue语法。例如 importcomponents 都需要放入引入的自定义组件。

import FormRenderHt from '@/components/FormRender/module/form-ht'
export default {
  components: { FormRenderHt },
}
  • 组件引入方法无问题,不符合vue机制。

通过对比分析,排除第一种异常情况,聚焦在第二种情况。可能的原因出现在:

  1. 异步引入产生的组件延迟引入,一个同步异步问题。(解决,修改组件引入都为异步)
  2. 组件嵌套太多,vue本身不支持这么多嵌套。(排除,支持多级嵌套)
// FormRenderHt 内部存在异步组件, FormRenderHt的引入也采用懒加载引入
const FormRenderHt = () => import('@/components/FormRender/module/form-ht')
export default {
  components: { FormRenderHt },
}

参考

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/221995.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!