2

私たちの webapp では、サイトを開いたホストに基づいて、同じ URL で異なるコンテンツを表示できるようにしたいと考えています。たとえば、https://localhost:44300は、ブラウザーまたは Office js タスクペイン内から開いた場合に応じて、異なる動作をします。

その場合は、office js タスクペイン内から Web サイトにアクセスすることが判明するまで、office.js JavaScript を含めないようにします。したがって も使用できませんOffice.context.requirements.isSetSupported

現時点で行う方法は、URL を確認することです。これには_host_Info. 例として、今すぐ次のチェックを行います

if(window.location.search.indexOf('_host_Info=Word') > -1) { /* initiate app for word js addin */ }

これは機能しますが、特に Web サイトの他のページに移動したい場合は、良い解決策ではないようです。したがって、事前に Office.js スクリプトを含めることなく、Office js ホストを検出できる別の方法があることを願っています。

4

1 に答える 1

2

あなたが説明したシナリオはサポートされていません。正直なところ、まったく同じサイトを Office アドインとスタンドアロン Web サイトの両方として使用したいことがどれくらいあるのでしょうか。私たちが最もよく目にするのは、人々が同じ共通ライブラリと CSS の一部を再利用しているにもかかわらず、シナリオごとに異なる html ページを使用しているということです。

また、Office アドインとして実行する場合は、ページに Office.initialize への参照を含める必要があることに注意してください。これにより、同じ Web サイト コンテンツをアドイン サイトとスタンドアロン サイトの両方で再利用することが難しくなります。したがって、リファクタリングしてできることを共有することをお勧めしますが、2 つの別個の html プレゼンスを用意してください。

お役に立てれば、

~ MSFT、Office Extensibility チームの開発者、Michael Zlatkovsky

于 2016-03-07T18:18:46.840 に答える