ember-cli / ember-cli/loader.js

Expand API to get access to dependencies or module

Aperta
#132 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
79
Fork
69
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Currently we can only get to the exports of the module resolved, not the actual module itself.

My use case is this:
I have a series of tests cases that test default export of a module, who's classes changes depending on environment variable -- the "classes changing depending on environment variable" was the easiest way I could integrate these two different solutions (temporarily)

In order to do this, I have to `unsee` the imported modules, so that the next time ember tries to resolve them, they will be reevaluated. One of my problems is that since (to my knowledge) I can't access the dependencies of the file, and addon files are reexported `app -> addon`, I can't programatically get to the underlying addon file to have it reexported.

```js
// right now I hard code, which is fine since this is temporary
require.unsee('my-addon/serializer/user');
require.unsee('my-app/serializer/user');

// I feel as though I should be able to do something like
const module = resolver.findModule('serializer:user');
// unsee module and it's deps so they are re-evaluated even if the serializer comes from an addon.
```

Thoughts or ideas?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia leggendo i punti di ingresso resolver.findModule e require.unsee descritti nell’issue, quindi traccia il modo in cui sono rappresentati gli export risolti e i re-export degli addon. Determina se l’API debba esporre il modulo sottostante, le sue dipendenze o entrambi. L’issue non definisce criteri di accettazione per stabilire cosa significhi “completato”, quindi chiarisci prima l’API prevista e il comportamento di rivalutazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
tooling
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.