catch
in Google apps script is reserved word and this make it impossible to use
with promises. And while you can easily overcome it by not using promises which in
fact absent in GAS environment the problem become hard to solve if your project
requires 3rd-party library. In example jsonwebtoken
, which dependent on another
library, which has .catch
in its code.
At the end of the day it become simpler to roll-out babel transformation than any other option.
In
performRequest.then(doSomething).catch(function() { handler() });
Out
performRequest.then(doSomething)["catch"](function () {
handler();
});
$ npm install babel-plugin-transform-catch
.babelrc
{
"plugins": ["babel-plugin-transform-catch"]
}
$ babel --plugins babel-plugin-transform-catch script.js
require("babel-core").transform("code", {
plugins: ["babel-plugin-transform-catch"]
});