microsoft / microsoft/TypeScript
Provide a way to alias namespaces
Nessuno ha ancora preso questa issue.
- Lingua principale
- Go
- Stelle
- 111k
- Fork
- 14.3k
- Merge medio
- 2g 4h
- PR unite (30g)
- 132
Descrizione
TypeScript should have a way to embed (type) namespaces. In the following case, assigned (embeded) namespace NS.A should have a C type.
TypeScript Version: master
Code
namespace NS_A {
export class C {
}
}
namespace NS {
export var A = NS_A;
export type A = NS_A;
}
var C = NS.A.C;
type C = NS.A.C;
Expected behavior:
$ node built/local/tsc.js --lib es6 -m commonjs --noEmit index.ts
Actual behavior:
$ node built/local/tsc.js --lib es6 -m commonjs --noEmit index.ts
index.ts(7,19): error TS2304: Cannot find name 'NS_A'.
index.ts(10,13): error TS2305: Module 'NS' has no exported member 'A'.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con il riproduttore in index.ts ed esegui il comando built/local/tsc.js indicato nell'issue per confermare gli errori di namespace e di tipo. Traccia la gestione da parte del compilatore degli alias di namespace e dei tipi esportati, quindi definisci il comportamento previsto sia per l'espressione di valore sia per il riferimento di tipo. Il lavoro è completato quando l'esempio viene compilato senza gli errori segnalati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- compilers
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100