microsoft / microsoft/TypeScript
Javascript modules should be able to pass the exported value to child modules
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.3k
- Ø Merge
- 2 T. 4 Std.
- Gemergte PRs (30 T.)
- 132
Beschreibung
TypeScript Version: 2.7.0-dev.201xxxxx
Search Terms:
Code
// @noEmit: true
// @allowJs: true
// @checkJs: true
// @Filename: bluebird.js
var bluebird = require('./promise')()
bluebird.promisify
bluebird.outer
module.exports = bluebird
// @Filename: promise.js
module.exports = function() {
function Promise() {
}
Promise.outer = function () {
}
require('./promisify')(Promise)
Promise.promisify
Promise.outer
return Promise
}
// @Filename: promisify.js
module.exports = function (Promise) {
Promise.promisify = function () {
}
}
Expected behavior:
Bluebird's assignments to Promise in both promise.js and promisify.js should be visible in both promise.js and bluebird.js
Actual behavior:
promisify is not recognised in promise.js or bluebird.js. This seems very difficult to track statically, especially in the binder.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Reproduktion über drei Dateien in bluebird.js, promise.js und promisify.js und untersuche anschließend das Binder-Verhalten, das beim Nachverfolgen von Zuweisungen über erforderliche Module hinweg beteiligt ist. Als abgeschlossen gilt die Aufgabe, wenn die promisify-Zuweisung sowohl in promise.js als auch in bluebird.js neben den vorhandenen Promise- und bluebird-Eigenschaften erkannt wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, typescript
- Bereich
- compilers
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100