从第三方库扩展vue.js组件

时间:2017-02-05 06:55:45

标签: javascript vuejs2 vue.js

我正在使用element-ui中的组件ElDatepicker,我想更改它的模板和事件处理程序方法。 我试图在单个文件组件中执行类似的操作:

import Vue from 'vue';
import ElDatePicker from 'element-datepicker'
Vue.use(ElDatePicker)
var dpkr = Vue.component('ElDatePicker')
console.log(dpkr)
export default {
    extends: ['ElDatePicker']
}

但它不起作用。我怎么能改变它?

https://github.com/ElemeFE/element/tree/dev/packages/date-picker - 组件包

2 个答案:

答案 0 :(得分:0)

您必须首先使用npm install element-ui在项目中安装Element UI。 然后,您必须编辑main.ts / main.js文件并添加

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

这应该可以解决您的问题。如需更多帮助,请检查Element UI

答案 1 :(得分:0)

您的主要问题是扩展应该指定单个组件而不是数组。您应该引用组件而不是名称。

import Vue from 'vue';
import ElDatePicker from 'element-datepicker'

export default {
  extends: ElDatePicker
}

您发布的存储库来自element-ui

执行npm install element-ui

然后:

import { DatePicker } from 'element-ui'
export default {
  // Use mixins for array syntax
  mixins: [DatePicker]
  // OR use extends without array
  extends: DatePicker
}