建構函式與 Promise:實用方法
考慮為具有各種非同步操作的部落格平台建立建構函式的場景。問題出現了:讓建構函數傳回 Promise 而不是它要建立的物件是否明智?
回傳Promise 的優點:
回傳Promise 的缺點:
替代方法:
不要從建構子回傳Promise,而是考慮使用一個Promise以下策略之一:
var engine = new Engine({path: '/path/to/posts'}); engine.init().then(function() { // Object is now initialized. });
Engine.create({path: '/path/to/posts'}).then(function(engine) { // Object is now initialized. });
結論:
雖然從構造函數傳回Promise 可以提供某些好處,但通常被認為是一種不好的做法。透過遵循建議的替代方法,您可以在不破壞預期建構函數行為的情況下實現所需的功能。
以上是建構函數應該回傳 Promise 嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!