我试图看到使用office js存在自定义属性。我无法了解存在。
Excel.run(async (context) => {
let customDocProperties = context.workbook.properties.custom;
let customProperty = customDocProperties.getItem("prop");
customProperty.load("key, value");
await context.sync();
console.log(customProperty);
}
在上述情况下,如果财产" prop"可用,代码工作正常,没有任何问题。如果没有" prop"或任何可用的惯例,代码不会进一步。
如果没有此类属性或没有可用的自定义属性,如何破解代码?
另外,我尝试了以下代码。在这种情况下,当有任何自定义属性可用时,代码会挂起并优于内存峰值(以GB为单位)。
customDocProperties.load('items');
await context.sync();
console.log(customDocProperties.items.length);
由于
答案 0 :(得分:1)
尝试使用getItemOrNullObject()而不是getItem()。以下是一个例子:
Excel.run(async (context) => {
let customDocProperties = context.workbook.properties.custom;
let customProperty = customDocProperties.getItemOrNullObject("prop");
customProperty.load("key, value");
await context.sync();
if (customProperty.isNullObject) {
//Handle case where the custom property does not exist.
}
else
console.log(customProperty);
})
}
有关详细信息,请参阅CustomPropertyCollection。