From f87b673a2959b8d05703c2c83c89d32fe38d2e75 Mon Sep 17 00:00:00 2001 From: David Aurelio Date: Tue, 15 Mar 2016 05:21:55 -0700 Subject: [PATCH] Add possibility to `console.error`/redbox on promise rejections Summary: Adds a possibility to `console.error` / redbox if any promise is rejected. Differential Revision: D3048130 fb-gh-sync-id: b1a44b421ec3b1f7913226c86b2a48f00f27b105 shipit-source-id: b1a44b421ec3b1f7913226c86b2a48f00f27b105 --- Libraries/promiseRejectionIsError.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 Libraries/promiseRejectionIsError.js diff --git a/Libraries/promiseRejectionIsError.js b/Libraries/promiseRejectionIsError.js new file mode 100644 index 00000000000000..7e6bca86f496a6 --- /dev/null +++ b/Libraries/promiseRejectionIsError.js @@ -0,0 +1,24 @@ +/** + * Copyright (c) 2016-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule promiseRejectionIsError + * @flow + */ + +require('Promise'); // make sure the default rejection handler is installed +const rejectionTracking = require('promise/setimmediate/rejection-tracking'); + +module.exports = () => { + rejectionTracking.enable({ + allRejections: true, + onUnhandled: (id, error) => { + console.error(error); + }, + onHandled: () => {}, + }); +};