В настоящее время мы разрабатываем надстройку PowerPoint, и у нас возникают проблемы с ее работой в режиме слайд-шоу (в полноэкранном режиме) в PowerPoint Online, что недавно привело к ее отклонению из Office Store.
Вотминимальный пример, который воспроизводит ошибку, на основе How-To руководства :
index.html
<!-- Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -->
<!-- See LICENSE in the project root for license information -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>My Office Add-in</title>
<!-- Office JavaScript API -->
<script type="text/javascript" src="https://appsforoffice.microsoft.com/lib/1.1/hosted/office.debug.js"></script>
<!-- LOCAL -->
<link rel="stylesheet" href="node_modules/office-ui-fabric-js/dist/css/fabric.min.css" />
</head>
<body class="ms-font-m ms-welcome">
<h1>Hello World</h1>
<script type="text/javascript" src="node_modules/core-js/client/core.js"></script>
<script type="text/javascript" src="node_modules/jquery/dist/jquery.js"></script>
<script type="text/javascript" src="node_modules/office-ui-fabric-js/dist/js/fabric.js"></script>
<script type="text/javascript" src="app.js"></script>
</body>
</html>
приложения.js
"use strict";
(function() {
// The initialize function must be run each time a new page is loaded
Office.initialize = function(reason) {
$(document).ready(function() {
$("#run").click(run);
});
};
function run() {
return PowerPoint.run(function(context) {
/**
* Insert your PowerPoint code here
*/
return context.sync();
});
}
})();
counter-manifest.xml
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp
xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="ContentApp">
<Id>71a1a0ed-6cd0-4a6e-ad2d-015b8a8b43cb</Id>
<Version>1.0.0.0</Version>
<ProviderName>Test</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="DisplayName" />
<Description DefaultValue="Description"/>
<IconUrl DefaultValue="https://localhost:3004/assets/icon-32.png" />
<HighResolutionIconUrl DefaultValue="https://localhost:3004/assets/hi-res-icon.png"/>
<AppDomains></AppDomains>
<Hosts>
<Host Name="Presentation" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="https://localhost:3004/index.html" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
<VersionOverrides
xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<Hosts>
<Host xsi:type="Presentation"></Host>
</Hosts>
<Resources></Resources>
</VersionOverrides>
</OfficeApp>
Мы обслуживаем нашу надстройку с помощью Browsersync, как описано в разделе КакВести.Когда я добавляю его в пустую презентацию в PowerPoint Online, кажется, что он работает должным образом (за исключением другой ошибки при обновлении, описанной здесь ), пока я не попытаюсь перейти в режим слайд-шоу (полноэкранный режим).Я вижу загрузочную анимацию в полноэкранном режиме в течение нескольких секунд, после чего я возвращаюсь в предыдущий режим редактора.
Вот ошибки, отображаемые в консоли инструментов разработчика Chrome при попытке войти в режим слайд-шоу:
Отказано в получении небезопасного заголовка "X-WacCluster"
Отказ в получении небезопасного заголовка "X-SupportSVGInWebGL"
Не удалось загрузить https://euc -powerpoint.officeapps.live.com / pods / RemoteUls.ashx : Заголовок 'Access-Control-Allow-Origin' содержит несколько значений 'https://contentstorage.osi.office.net, https://contentstorage.osi.office.net',, но разрешено только одно.Следовательно, Origin 'https://contentstorage.osi.office.net' не разрешен доступ.
Uncaught TypeError: Невозможно прочитать свойство' $ 37 'с нулевым значением на PPTe. $ 22. $ 17a (VM3959 11b10a4995dd8c5f.js: 10)
Как мы можем обеспечить правильную работу нашей надстройки в режиме слайд-шоу?