任何人都可以帮我开发用于Outlook的Office 365插件(网络应用和桌面)使用SPA

时间:2015-07-10 14:42:51

标签: office365 office365-apps officedev

我想为outlook web& amp;开发一个办公室365邮件加载项(阅读应用程序)。其他客户,我已经快速开始提供napacloudapp.com提供的样本,这可以正常工作。

但我想主持一个已经开发的SPA,稍加修改,我通过配置元数据文件来管理。

据我所知,所有可用的SPA模板都使用了一些路由插件,负责更改路由& app将根据url中可用的路由加载视图(默认情况下,在url中后跟'#'字符)

但是,当我点击导航链接来更改哈希位置&根据更改的路线加载新内容,它不起作用,因为请求的路线形成不正确,因为在Outlook网络应用程序中,我们的应用程序正在加载iframe& iframe src在url中包含#,导致错误的url形成。在Outlook网络应用程序中呈现的iframe如下

<iframe id="ocii1" width="100%" height="100%" frameborder="0" title="App for Office" sandbox="allow-scripts allow-forms allow-same-origin ms-allow-popups allow-popups" name="_xdm_0__ocii141675079_65831848_1436538340692" src="https://localhost:44301/Index.html?et=&amp;_host_Info=Outlook|Web|16.00#&amp;_xdm_Info=52741ef1_5cb5874_1436538340692|ocii1|https://outlook.office365.com/owa/?realm=mycompany.com#path=/mail"></iframe>

有人可以帮助我吗?

enter image description here

2 个答案:

答案 0 :(得分:0)

不建议在办公室加载项中使用iframe。使用html / css / js填充办公室加载项目中的标准Web应用程序内容。

希望这会有所帮助。

答案 1 :(得分:0)

最后找到了解决方法,创建了一个中间页面&amp;将其配置为元数据中的启动页面&amp;而不是导航到目标位置。将以下代码添加到中间页面。

Office.initialize = function (reason) {
    $(document).ready(function () {
        location.href = "https://localhost/mailApp";
    });
};

它将解决额外的#&#39;#&#39;在邮件应用iframe的src中出现问题,将完整的src替换为&#34; https://localhost/mailApp&#34;。