ember-cli / ember-cli/ember-cli-htmlbars

app's TS files do not properly overwrite an addon's JS files

Abierto
#774 2 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
JavaScript
Estrellas
77
Forks
65
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

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**
```ts
import templateOnlyComponent from '@ember/component/template-only';

interface LoadingSignature {
Element: HTMLElement; //
}

const LoadingComponent = templateOnlyComponent();
export default LoadingComponent;

declare module '@glint/environment-ember-loose/registry' {
export default interface Registry {
Loading: typeof LoadingComponent;
}
}
```
**my-app/app/components/index.hbs**
```hbs

Whatever

```

This does not work and throws the following error:
![image](https://github.com/ember-cli/ember-cli-htmlbars/assets/55881713/6736d645-e1ca-4d43-be86-d45984359dda)

It does work when using a JS file to overwrite the component:
**my-app/app/components/index.js**
```ts
// 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**
```hbs

Whatever

```

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.