|
|
@@ -36,11 +36,8 @@ var cid = 1
|
|
|
exports.extend = function (extendOptions) {
|
|
|
extendOptions = extendOptions || {}
|
|
|
var Super = this
|
|
|
- var Sub = createClass(
|
|
|
- extendOptions.name ||
|
|
|
- Super.options.name ||
|
|
|
- 'VueComponent'
|
|
|
- )
|
|
|
+ var name = extendOptions.name || Super.options.name
|
|
|
+ var Sub = createClass(name || 'VueComponent')
|
|
|
Sub.prototype = Object.create(Super.prototype)
|
|
|
Sub.prototype.constructor = Sub
|
|
|
Sub.cid = cid++
|
|
|
@@ -56,6 +53,10 @@ exports.extend = function (extendOptions) {
|
|
|
config._assetTypes.forEach(function (type) {
|
|
|
Sub[type] = Super[type]
|
|
|
})
|
|
|
+ // enable recursive self-lookup
|
|
|
+ if (name) {
|
|
|
+ Sub.options.components[name] = Sub
|
|
|
+ }
|
|
|
return Sub
|
|
|
}
|
|
|
|