VUE实现动态注册组件
VUE动态注册组件
1、为什么要动态注册
我们在一些开发中,组件的使用并不是固定的,需要根据配置或者请求的数据去动态渲染某个组件,如果不动态渲染则需要去开发很多重复且冗余的页面
2、怎样实现功能
通过vue的component,代码如下:
/**
* @desc 统一加载注册组件资源
*/
registerComponent(templateName) {
var directory = this.indicator.legacy?'custom':'charts';
Vue.component(
templateName,
require("@/components/"+directory+"/" + templateName + ".vue").default
);
},
因为我的目录也是通过参数配置的,所以用了一个三元表达式判断该组件是在那个目录,在使用的时候调用这个方法即可