javascript - 如何在单文件组件中扩展另一个 VueJS 组件? (ES6 加载器)

标签 javascript ecmascript-6 vue.js es6-module-loader

我正在使用 vue-loader构建我的 *.vue 单文件组件,但我在从另一个扩展单文件组件的过程中遇到了问题。

如果一个组件遵循 export default { [component "Foo"definition] } 的规范,我认为这只是导入该组件的问题(就像我对任何子组件所做的那样)然后 export default Foo.extend({ [extended component definition] })

不幸的是,这不起作用。任何人都可以提供建议吗?

最佳答案

经过一些测试,简单的解决方案是确保为要扩展的任何组件导出 Vue.extend() 对象而不是普通对象。

在我的例子中,基础组件:

import Vue from 'vue'

export default Vue.extend({ [component "Foo" definition] })

和扩展组件:

import Foo from './Foo'

export default Foo.extend({ [extended component definition] })

关于javascript - 如何在单文件组件中扩展另一个 VueJS 组件? (ES6 加载器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35964116/

相关文章:

javascript - 函数的原型(prototype)属性

javascript - Extjs 4.1 3 个组件可滚动的布局是什么

javascript - 是否可以进行有条件的解构或有后备?

javascript - 使用生成器/迭代器包装结果集回调函数

php - 如果值为 true,则为每个项目添加类

php - 如何使 PHP 或 JavaScript 生成 HTML 表单

javascript - 如何在单击时删除焦点菜单上的焦点

javascript - react 单行组件

vue.js - Vue 路由器 : how to cast params as integers instead of strings?

vue.js - 'prettier/vue' 和 '@vue/prettier' 之间的差异 eslint