INSTANCE_EVENT_HOOKS = 'INSTANCE_EVENT_HOOKS',
INSTANCE_CHILDREN = 'INSTANCE_CHILDREN',
INSTANCE_LISTENERS = 'INSTANCE_LISTENERS',
+ INSTANCE_SCOPED_SLOTS = 'INSTANCE_SCOPED_SLOTS',
OPTIONS_DATA_FN = 'OPTIONS_DATA_FN',
OPTIONS_DATA_MERGE = 'OPTIONS_DATA_MERGE',
link: `https://v3.vuejs.org/guide/migration/listeners-removed.html`
},
+ [DeprecationTypes.INSTANCE_SCOPED_SLOTS]: {
+ message: `vm.$scopedSlots has been removed. Use vm.$slots instead.`,
+ link: `https://v3.vuejs.org/guide/migration/slots-unification.html`
+ },
+
[DeprecationTypes.OPTIONS_DATA_FN]: {
message:
`The "data" option can no longer be a plain object. ` +
assertCompatEnabled(DeprecationTypes.INSTANCE_SET)
return set
},
+
$delete: () => {
assertCompatEnabled(DeprecationTypes.INSTANCE_DELETE)
return del
},
+
$mount: i => {
assertCompatEnabled(DeprecationTypes.GLOBAL_MOUNT)
// root mount override from ./global.ts in installCompatMount
return i.ctx._compat_mount || NOOP
},
+
$destroy: i => {
assertCompatEnabled(DeprecationTypes.INSTANCE_DESTROY)
// root destroy override from ./global.ts in installCompatMount
return i.ctx._compat_destroy || NOOP
},
+
+ $scopedSlots: i => {
+ assertCompatEnabled(DeprecationTypes.INSTANCE_SCOPED_SLOTS)
+ return i.slots
+ },
+
$on: i => on.bind(null, i),
$once: i => once.bind(null, i),
$off: i => off.bind(null, i),
+
$children: getCompatChildren,
$listeners: getCompatListeners
} as PublicPropertiesMap)