Skip to content

Reentrancy breaks property decorators #104

Closed
@SLaks

Description

@SLaks

When using the pattern of

@Component({
  components: { foo: require('./foo.vue') }
})
class ...

foo.vue's class will be created during the initialization of its calling class.
This will end up applying all property decorators (eg, @Watch from https://github.com/kaorun343/vue-property-decorator) to Foo instead of the calling class.

To fix this, you need to change $decoratorQueue to a stack so that you can differentiate between properties applied to different reentrant class definitions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions