vue 动态注册组件,Vue提供方法中,可以用来实现全局注册组件的是

  vue 动态注册组件,Vue提供方法中,可以用来实现全局注册组件的是

  本文主要介绍vue实现基础组件自动全局注册的方法,帮助大家更好的理解和使用vue框架。感兴趣的朋友可以了解一下。

  参考https://cn.vuejs.org/v2/guide/components-registration.html,官网

  日常开发中,有些组件是常用的,但是为了避免在开发过程中不断引入,或者在main.js中注册,或者手动注册每个组件。直接执行自动全局注册。

  自动全球注册在官网有详细描述。以下是根据我自己在官网描述的demo开发实例:

  

1、自定义文件夹:

  在src下创建一个新的组件文件夹来存储组件。并创建一个新的来存储需要自动全局注册的组件,如base。

  

2、在base文件夹下定义index.js,具体代码如下示:

  //基本组件的自动全局注册

  从“vue”导入Vue

  const require component=require . context(

  //其组件目录的相对路径。/,

  //查询其子目录?

  没错,

  //与基础组件的文件名匹配的正则表达式

  /\.vue$/

  )

  requireComponent.keys()。forEach(文件名={

  //获取组件配置

  const component config=require component(文件名)

  //全局注册组件

  组件(

  Componentconfig.default.name,//这里的名称是component属性定义的名称。

  //如果此组件选项通过导出默认值导出,

  //然后`。将首先使用默认值,

  //否则退回到用法模块的根。

  componentConfig .默认值

  )

  })

  上面的代码需要解释一下:

  1.匹配基础组件文件名的正则表达式,需要根据实际组件名称和规则进行配置;

  2.componentConfig.default.name这里用来表示组件的名称,但不是固定的写法。组件名称可以用不同的方式表示。例如,也可以直接解析fileName来获得文件夹名作为组件名。componentConfig.default.name中的名称来自定义组件时的页面名称。如果页面上没有定义名称,将会报告一个错误。

  

3、在main.js中引入index.js文件

  因为全局注册的行为必须发生在创建根Vue实例之前(通过new Vue)。

  //基本组件的自动全局注册。全局注册的行为必须发生在创建根Vue实例之前(通过new Vue)。

  “导入”。/组件/基本/索引

  

4、直接在需要的地方使用该组件即可

  页面效果如下:

  以上就是vue实现基础组件自动全局注册的细节。更多关于vue组件全球注册的信息,请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: