0
我有一個在SharePoint Online中承載的自定義PowerPoint Office加載項。我正在使用JavaScript API來獲取有關該套牌的信息,例如當前的幻燈片ID。如何從Office加載項獲取SharePoint O365文檔ID
Office.initialize = function (reason) {
$(document).ready(function() {
Office.context.document.addHandlerAsync('documentSelectionChanged', onDocumentSelectionChanged);
onDocumentSelectionChanged();
});
};
function onDocumentSelectionChanged() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.SlideRange,
function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
var slideId = result.value.slides[0].id;
}
});
}
我在API中找不到任何東西來獲取當前SharePoint文檔的ID(guid)。這是Office API的一部分,還是我可以通過其他方式獲取ID?
加載項在其自己的iframe中呈現在與主窗口不同的域上,因此無法讀取地址欄中的URL。 – Jared
您曾經能夠將SourceDoc作爲必需的標記參數傳遞給插件。現在他們已經將它作爲json字符串移動到window.name。所以你需要做JSON.parse(window.name).xdmInfo和一些額外的字符串操作來清理URL。它包含sharepoint中的sharepoint url和文檔的GUID。 – Maarten
哇,謝謝!請添加此作爲答案,以便我可以接受它。我最初的搜索沒有提供這個「功能」的任何文檔,但我會繼續尋找。我會清理一下,但是這個片段讓我獲得了文檔ID:'JSON.parse(window.name).xdmInfo.split('|')[2] .match(/ [a-z0-9 ] {32} /)' – Jared