Googleスプレッドシート用のアプリでは、localStorageの一部のパラメータを1つの関数で保存します。そして、別の関数では、それらを取得する必要があります。もちろん、モードレスダイアログやサイドバーを作成することができます.HTMLコードとjsがありますが、この2番目の関数は現在のシートのみをリフレッシュするので、UIは必要ありません。また、私は知っている、そのサーバー側はlocalStorageへのアクセス権を持っていません。私はlocalStorageからデータを取得する(Googleスクリプト)
(それを行う方法を、APIで答えを見つけられませんでした<script type="text/javascript">
google.script.run.refreshCurrentSheet(localStorage.getItem('var'));
</script>
:
server.gs
:
function menuItemClicked()
{
// when we click on item in addon menu, this called
// and load 'client.html'
}
function refreshCurrentSheet(params)
{
// called by 'client.html'
// do something else with params...
}
client.html
ここ は私の抽象コードです
質問: UIを表示せずにhtmlを読み込み、jを実行するにはどうすればよいですか?
P.S.これらのパラメータをサーバーサイドでキャッシュに保存することは、クライアントで頻繁に使用して変更するため、解決策ではありません。
上https://developers.google.com/apps-script/reference/cache/
より上
もっとありますすべて、なぜプロパティサービスを使用してデータを保持しないのですか?おそらく私はあなたの質問を誤解しました –
私はGoogle Apps ScriptがJavascript 1.6に基づいていると信じています。それはlocalstorageにアクセスできるので、私の推測はGoogle Apps Scriptと同じです。もし誰かがうまくいけば私を訂正しないでしょう。 [参考文献](https://developer.mozilla.org/en-US/docs/Web/API/Storage/LocalStorage)です。しかし、それでも私がPropertyServiceを使用することに不利益を感じていない場合でも、google.script.runを使って任意のスクリプトにアクセスできます。 – Cooper
localStorageはブラウザのウィンドウオブジェクトに属します。 GASはJSをベースにしていますが、Googleサーバー上の異なる環境で動作します。つまり、グローバルオブジェクトが異なります。 –