File manager - Edit - /usr/local/cpanel/3rdparty/share/promise/3.5.5/docs/docs/api/promise.method.md
Back
--- layout: api id: promise.method title: Promise.method --- [← Back To API Reference](/docs/api-reference.html) <div class="api-code-section"><markdown> ##Promise.method ```js Promise.method(function(...arguments) fn) -> function ``` Returns a new function that wraps the given function `fn`. The new function will always return a promise that is fulfilled with the original functions return values or rejected with thrown exceptions from the original function. This method is convenient when a function can sometimes return synchronously or throw synchronously. Example without using `Promise.method`: ```js MyClass.prototype.method = function(input) { if (!this.isValid(input)) { return Promise.reject(new TypeError("input is not valid")); } if (this.cache(input)) { return Promise.resolve(this.someCachedValue); } return db.queryAsync(input).bind(this).then(function(value) { this.someCachedValue = value; return value; }); }; ``` Using the same function `Promise.method`, there is no need to manually wrap direct return or throw values into a promise: ```js MyClass.prototype.method = Promise.method(function(input) { if (!this.isValid(input)) { throw new TypeError("input is not valid"); } if (this.cache(input)) { return this.someCachedValue; } return db.queryAsync(input).bind(this).then(function(value) { this.someCachedValue = value; return value; }); }); ``` </markdown></div> <div id="disqus_thread"></div> <script type="text/javascript"> var disqus_title = "Promise.method"; var disqus_shortname = "bluebirdjs"; var disqus_identifier = "disqus-id-promise.method"; (function() { var dsq = document.createElement("script"); dsq.type = "text/javascript"; dsq.async = true; dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js"; (document.getElementsByTagName("head")[0] || document.getElementsByTagName("body")[0]).appendChild(dsq); })(); </script> <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Generation time: 0.04 |
proxy
|
phpinfo
|
Settings