-
-
Notifications
You must be signed in to change notification settings - Fork 65
Open
Description
I have the following example component in my addon:
my-addon/addon/components/example/index.ts
import templateOnly from '@ember/component/template-only';
export default templateOnly();
```hbs
**my-addon/addon/components/example/index.hbs**
Whatever
```
**my-addon/app/components/example/index.js**
```js
export { default } from 'my-addon/components/loading';
```
Then in my app I completely replace it with a new template AND "backing class" with some Glint because why not:
my-app/app/components/index.ts
import templateOnlyComponent from '@ember/component/template-only';
interface LoadingSignature {
Element: HTMLElement; // <i>
}
const LoadingComponent = templateOnlyComponent<LoadingSignature>();
export default LoadingComponent;
declare module '@glint/environment-ember-loose/registry' {
export default interface Registry {
Loading: typeof LoadingComponent;
}
}my-app/app/components/index.hbs
<div>Whatever</div>This does not work and throws the following error:

It does work when using a JS file to overwrite the component:
my-app/app/components/index.js
// I have lost all my Glint stuff, because it's a JS file :'(
import templateOnlyComponent from '@ember/component/template-only';
const LoadingComponent = templateOnlyComponent();
export default LoadingComponent;my-app/app/components/index.hbs
<div>Whatever</div>Metadata
Metadata
Assignees
Labels
No labels