ページ

2017年1月16日月曜日

GASをES6で書く時に気にすること


GASをES6で書く時に気にすること

個人用のSlackに執事的なボットをGASで作って、
色々やってもらおうと思ってES6で作りました。
相変わらず名前のセンスは無く、まんまです・・・
この時に気をつけた事を書いてみようかと思います。

前提


ES6で書いてwebpackを使ってBabelでES5に変換
node-google-apps-scriptでGoogle Drive上にアップしてます。

「関数を選択」に関数が出てこない!!


これ↓



普通に次のような関数を定義すると
function main() {
  ...
}
関数を選択のドロップダウンにmainが出てきますが、
今回の場合BabelでES5に変換する為うまく出てきません😱
global.main = function() {
  ...
}
Google Drive上にアップした後にfunction main() ~とか書くと
当たり前ですが選択項目に出てきます。が、毎回これやるのも...
そんな時はgas-webpack-pluginが便利です
npm install --save-dev gas-webpack-pluginして、
webpack.config.js
var GasPlugin = require("gas-webpack-plugin");
module.exports = {
  ...
  plugins: [
    new GasPlugin()
  ],
  ...
}
こんな感じで追加してやると、function main() ~を作ってくれます!!

ウェブアプリケーションとして導入しても反映されない!!


こっから選択してGASをウェブアプリとして公開するやつです。

ES6に関わらずですが、何回やっても反映されない場合は次を試してみて下さい
「ファイル」>「版を管理」を選択

「新しいバージョンを保存」を選択し版数を増やします。

再度ウェブアプリケーションとして導入を開き、
プロジェクトバージョンに先ほどの版数を選択します。

これで最新のコードが反映されてると思います


とまあ、とりあえず気にする事を書いてみましたが
他にも気にする事があるって方はコメント頂けると幸いです。

0 件のコメント:

コメントを投稿