我们构建了一个Excel任务窗格加载项,主要用于表。我们有一些代码在office.initalize上执行,并将事件处理程序附加到我们之前创建的现有绑定。代码非常简单(在TypeScript中):
document.bindings.getAllAsync(null, bindingResult => {
let bindings = <Office.Binding[]>bindingResult.value;
if (bindings) {
bindings.forEach(b => {
// Only attach to our bindings
if (b.id.indexOf(Table.bindingPrefix) == 0)
me.attachHandler(b);
});
}
});
attachHandler = (binding: Office.Binding) => {
let eventType = Office.EventType.BindingSelectionChanged;
binding.addHandlerAsync(
eventType,
this.onBindingSelectionChanged,
null,
asyncResult => this.onHandlerAdded(eventType, asyncResult)
);
}
此代码在过去适用于Office Online和桌面。但是,我们通过修改示例加载项命令清单来修改清单以包含加载项命令(只是打开任务窗格)。现在,上述代码在Office Online中失败,并显示错误:
error: OSF.DDA.Error
code: 5001
message:"An internal error has occurred."
name:"Internal Error"
status:"failed"
相同的清单适用于桌面的Office客户端。而我们不包含加载项命令的旧清单仍可在桌面和在线上使用。这意味着这似乎特定于加载项命令+ office online。 有办法解决这个问题吗?
答案 0 :(得分:0)
只是想关闭这个问题的循环,说这是Office API中的一个错误,并且已经修复。