问题标签 [office-app]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
office365 - 在 Office 应用程序中 - 无法重新定义不可配置的属性“上下文””
这类似于在 Office Apps for Excel 2013 - 无法重新定义不可配置的属性 'context'"。
但是它只发生在 IE 11 和 Edge 上。我的用例如下:我打开 Outlook 或任何办公应用程序插件。我为 OAuth 运行一个弹出窗口,在弹出窗口关闭时我将 iframe 重定向到另一个页面。
我第一次打开插件并完成 OAuth 流程一切正常。但是,当我关闭加载项并再次打开它时(这次重定向是自动完成的,因为用户是身份验证并被 cookie 识别)Office 加载项无法启动,当我手动重新启动它几次时,它会打开并工作正确。
我得到的错误是:无法在 Office.js 中重新定义不可配置的属性“上下文”(o15apptofilemappingtable.js(11,3563))
编辑: Firefox 和 Chrome 也会出现问题,但是处理得更优雅,加载项不会崩溃,它从错误记录到控制台开始。
office365 - 在线将文档从本地文件系统加载到 Office
我想直接从 Word Online 中的本地文件系统加载/保存文件(而不将其上传到 onedrive)。由于这不是默认功能的一部分,我试图确定这是否可以通过插件实现。
装载部分:
Document对象可以访问body
load
和方法,save
但是文档(对我来说)不清楚加载:Fills the proxy object created in JavaScript layer with property and object values specified in the parameter.
似乎有可用的选项insertFileFromBase64
,insertOoxml
但不清楚这些选项是否仅在(Windows)桌面版本或在线版本中。看到这个问题
节省部分:
这似乎更容易一点,因为已经有了Download
获取文档副本的功能。
不是在寻找完整的解决方案,只是一个“可能”,也许还有一些关于使用什么方法的指针。
javascript - Office 任务窗格应用程序 ajax 调用不起作用
我正在开发这个用于办公室的 TaskPane 应用程序,我想从驻留在我们域中的 php 函数中获取一些数据。
我们在其他应用程序中使用相同的 php 函数,我可以通过 URL 中传递给它的一些参数来调用它,它会返回一个简单的答案。
示例:https ://www.ourdomain.com/phpfunction.php?message=HELLO
问题是,在调试时,我似乎无法从 TaskPane 应用程序通过 AJAX 调用此函数。
我将我们的域添加到应用程序清单中的 App Domains 中,但没有帮助
这是我的 AJAX 调用
我想用纯 javascript 来做,所以如果可能的话,我不想为此使用自定义的 .NET Web 服务修复程序。
PS:我想说明的是,这个完全相同的调用在移动应用程序或基于浏览器的应用程序中完美运行。是办公室在这里做某事...
json - 如何使用 Office365 中的对话框 API 将 Json 对象从父级发送到对话框
我是 Office 365 字 JavaScript API 的新手。我正在尝试使用对话框 api 将 Json 对象从父级发送到对话框。但我找不到更好的解决方案。我发现可以使用下面的代码片段将 Json 对象从对话框发送到父级。
有人可以用代码片段给我一个很好的解决方案来解决这个问题吗?
ms-office - Office 加载项(Web 应用程序)可以完全脱机(没有 Web 服务器)?
我想创建一个带有一些 HTML + JavaScript 的 Office 加载项,以便在 Office 商店中出售。而且这个插件不需要使用任何服务器端设施。但如果我理解https://dev.office.com/getting-started/addins 插件的源文件必须托管在某个 Web 服务器上。
所以主要问题:我能否以某种方式将加载项的所有源和所有资源打包到输出 DLL 文件中,并仅将清单和 DLL 文件推送到 Office 商店,而无需任何 Web 服务器?
我需要这个来允许来自 Office 商店的用户,将此加载项安装到他的 Office 并允许离线使用它(没有互联网连接)。
如果有人决定窃取我的资源并创建插件的副本,那么这种配置对于反向插件来说也有点复杂。
office365 - office.js:Outlook Web 在约会结束时显示“保存/放弃/取消”对话框
我有一个用新的 Javascript API (office.js) 编写的 Outlook 加载项。
我在日历中的约会上从撰写表单中进行了一些操作(在正文中添加主题后缀和一些文本)。完成操作后,我调用:
保存了我的更改的项目,但是当我打电话Office.context.mailbox.item.close()
或只是关闭 Outlook Web UI 上的约会撰写表单时 - 如果我想保存我的更改或放弃它们,则会显示一个对话框,尽管自saveAsync
通话以来没有进行任何更改。
无论用户单击“保存”还是“放弃”,约会都会包含我在saveAsync
通话前使用加载项所做的更改。这种行为的原因是什么?
excel - Office.js javascript API中基于C#的excel函数可能吗?
我目前正在使用 Office javascript API 开发一个工具。但是,我想提供一个自己的 Excel 函数(类似于=SUM(A1:A5)
),它基于 C# 中的代码。
从用户的角度来看,有什么方法可以避免发布两个单独的插件?我可以将两种技术结合到一个插件中吗?
outlook - 获取 Outlook Web 加载项中日历的所有更改
我正在为 Outlook Web(Outlook365 和 Outlook.com)开发一个加载项,它需要检索日历中的所有更改。
我尝试使用日历 REST API,但是在调用getCallbackTokenAsync
获取访问令牌时,我得到的令牌是作用域的,当我调用日历 REST API 时,我收到此错误:
{"error":{"code":"ErrorAccessDenied","message":"您尝试访问的 api 不支持项目范围的 OAuth。"}}。
有没有人知道这个或其他方式来获得更改的项目?
excel - 任务窗格应用程序/加载项无法在 Office 2016 上加载
我有一个在 Word 和 Excel 上运行的 Office 任务窗格应用程序/加载项。最初应用程序/加载项是使用 VS2013 完成的。
应用程序/加载项清单已放入本地 SharePoint 2013 应用程序目录。此外,受信任的应用程序目录 URL 已在客户端 Office 设置中设置。
该应用程序/加载项在 Office 2013 上运行良好,但在 Office 2016 上运行良好。已更新到 Office 2016 的用户,该应用程序/加载项在我的组织下不可用(见图)。如果用户(使用 Office 2016)正在打开已安装应用程序/加载项的文档,则不会加载(参见图片)。
AppsManifest 如下。