5

这已经打了我几个小时了,现在是时候问了。

我已经在 Visual Stutio 中运行了 Apps for Office 教程,它运行良好——我可以在 excel 中看到所有按钮和功能都正确的任务窗格。

但是,我正在尝试将 Apps for Office 集成到我们现有的 MVC 项目中。一切都出现了,我可以在浏览器中看到“Office 应用程序”页面,然后Undefined is not a function在执行以下操作时进入以下 Microsoft.Office.js 模块片段window.external.GetContext()

OSF.InitializationHelper.prototype.getAppContext=function      OSF_InitializationHelper$getAppContext(wnd, gotAppContext) {
    if (this._hostInfo.isRichClient) {
        var returnedContext;
        **var context=window.external.GetContext();**
        var appType=context.GetAppType();
        var appTypeSupported=false;

有任何想法吗?

4

1 回答 1

1

一个老问题,但对于任何可能在搜索中找到这个问题的人来说仍然值得回答。

重要的一点是,“Office 应用程序”已更名为“Office Web 加载项”。建筑模式保持不变,它纯粹是一个名称的变化。

加载项旨在扩展 Office 应用程序(Word、PowerPoint、Excel、Outlook、Project 等)的功能。它们旨在在 Office 应用程序的上下文中运行,并且在该上下文之外运行它们(即直接在浏览器中打开加载项)将导致许多错误。例如,该getAppContext函数试图获取 Office 应用程序实例,因为它在 Office 之外运行,因此没有可用的“应用程序上下文”。

于 2017-08-27T17:08:34.750 回答