angular-extensions / elements

Lazy load Angular Elements (or any other web components / custom elements ) with ease!
https://angular-extensions.github.io/elements/
MIT License
315 stars 40 forks source link

Multiple components in single file #111

Open vinoth-sarsha opened 2 years ago

vinoth-sarsha commented 2 years ago

It more of a suggestion than a issue. We have a scenario where we have grouped multiple web components in a single file. But while specifying the respective file url in the elementConfig, its working only if we add multiple entries for the each component with the same file url.

const plugins: LazyElementModuleOptions = {
  elementConfigs:[
    { tag: component1', url: 'assets/component-file.js'},
    { tag: 'component2', url: 'assets/component-file.js'},
   { tag: 'component3', url: 'assets/component-file.js'},
  ]
}

If a solution exists for the above, please let me know.

If solution doesn't exists, my suggestions would be:

  1. Making the tag as a pattern match { tag: 'component-*', url: 'assets/component-file.js'}
  2. Match the element also with a attribute instead of the element-tag <component-one tag-attr *axLazyElement></component-one> { attribute-tag: 'tag-attr', url: 'assets/component-file.js'}