我想扩展Vue-Material组件,以便我可以在项目中抽象它们;例如有一个名为“my-icon”的图标组件,它只会继承/扩展md-icon组件。所以在我的项目中,我可以使用,它只需使用md-icon。
我尝试用:
创建MyIcon / index.jsimport VueMaterial from 'vue-material';
export default function install(Vue) {
Vue.component('my-icon', Vue.extend(VueMaterial.mdIcon));
}
得到了错误:
[Vue警告]:无法安装组件:模板或渲染函数未定义。
我真的希望能够扩展这些组件,而无需为每个组件定义模板,因为这会重复很多工作。在一个完美的世界中,我可以使用现有的vue-material组件,将它们重命名为我想要的,并且能够通过覆盖模板来扩展功能。这样,我可以在大多数工作中使用vue-material组件,并在需要时添加/替换而无需修改我的上游工作。
有没有人对此有任何建议/想法?
答案 0 :(得分:1)
您可以通过实际重新使用它们来扩展组件。
<template>
<div class="myCustomIcon">
<md-icon></md-icon>
</div>
</template>
import VueMaterial from 'vue-material';
export default{
components:{
mdIcon
}
}