===================================================================================
setSandboxMode
cajsの処理を省いて高速化する実験的オプション
createTemplateFromFileではつかえないみたい。
HtmlService.createTemplateFromFile
html側でgasを実行する仕組みテンプレート処理
テンプレ上ではUtilitiesがつかえなかったりするかも
テンプレートからのGASリクエスト(関数)
google.script.run.withSuccessHandler(function(msg, element) {
showError("正常終了", $('#button-bar'));
element.disabled = false;
}).withFailureHandler(function(msg, element) {
showError(msg, $('#button-bar'));
element.disabled = false;
}).withUserObject(this).test();
返値はstringなので、配列などの受け渡しが必要なら、
JSON.parse(msg);
とかつかうことになる。
ボタンにスクリプトを割り振る
ボタンを設置して右クリックとかで関数を割り当てられる
開発手法についての記事
coffee scriptつかってるみたい
coffee consoleとかgas-managerも便利かな
ライブラリの活用
standard script
これにクラスとしてスクリプトをつくっていく。。
メニューやアイテムとしての呼び出しができないっぽい?
addmenuとかadditemにグローバルの冠数詞か指定できないのかな。
ドキュメントが前より充実してるみたい
アプリケーションとして公開
DBがかなり弱かったりデバッグが厳しかったりするらしい。
うーん。ちょっとしたビューの作成くらいかな。
Google I/O で発表された GAS の新機能で Web アプリを作ってみた - WebOS Goodies
http://goo.gl/Xk6zZ
deployの方法
シートのスクリプトには対応していないのですぐには実践できないけど試してみた。
おお、動いたー。本当は、こういうの(gas-manager)を使った方法にした方がいいな。
「gas init -P」でプロジェクト設定できるけど、
srcとかtestとか環境をつくる場合には手動で設定ファイルをいじるのかな。
加えて、フォーラムにあるようにするといいのだろう。
Libraryプロジェクトをdev modeで読み込めば、
Libraryプロジェクトを更新すれば自動で
webアプリケーションが更新されるという形は可能です。トリガーの外部化などのテクニックを使えばかなりライブラリ側にコードを寄せられるはずです。
参考
Google I/O で発表された GAS の新機能で Web アプリを作ってみた - WebOS Goodies
http://goo.gl/Xk6zZ
Google Apps Scriptのソースコードの構成管理について - Google グループ
https://goo.gl/UH7xhS
joestump/python-gas-cli
https://goo.gl/0vDPMD
soundTricker/ScriptManager
https://goo.gl/wzHKmW
soundTricker/gas-manager
https://goo.gl/NsB4ja