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

标签 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 - 组件包

最佳答案

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

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

export default {
  extends: ElDatePicker
}

您发布的repo 来自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
}

关于javascript - 从第三方库扩展 vue.js 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42049367/

相关文章:

javascript - 如何在 Node.js 中从不同的应用程序注入(inject)模块

vue.js - Bootstrap vue 表的动态分页

javascript - VueJS - 列出数组并独立显示/隐藏

javascript - 除了 if/else 语句之外,是否有 "Vue way"来检查空字符串变量?

javascript - 有没有一种很好的方法可以将基于 JQuery 的小部件包装到一个可以在 Vue.js 中轻松使用的模块中?

javascript - 帮助 JavaScript 作用域

javascript - 如何从 jQuery 对象构建 jQuery 对象

javascript - Chrome 57+ 上的 RichFaces 应用程序出现 JS 错误 "Cannot read property ' switchToItem' 未定义”

javascript - Vue :Syntax Error: await is a reserved word

vuejs2 - VUEJS 在 <b-table> VUE-BOOTSTRAP 中显示嵌套对象