之所以称之为 “负载” 的方法,因为你想让你的CTX后才能访问它。同步(),正确。例如,假设你有一个希望输出的当前选择的地址码:
Excel.run(function(ctx) {
var range = ctx.workbook.getSelectedRange();
// <do some load on the range>
return ctx.sync().then(function() {
console.log(range.address);
})
}).catch(function(e) {
console.log(e);
})
因为你看到自己把range.address
(和你应该在IntelliSense看到枚举),这意味着你知道这是属性名,你应该已经加载。事实上,如果你忘记了,你会在尝试访问它时遇到失败,并且它会告诉你该属性尚未加载。
唯一需要注意的是集合:当你做tables.load(“name”)时,你真的在告诉表集合“加载你的所有子对象,预取名字”。所以,而不是寻找智能感知关闭表对象直接的,你应该寻找你将如何访问子属性(即tables.items [0] .___)
希望这有助于
〜迈克尔Zlatkovsky,在Office扩展团队开发,MSFT
顺便说一句,我看过这个线程,我能找到的唯一的事情这是接近,但不是所有的包容性: https://github.com/OfficeDev /office-js-docs/blob/master/excel/resources/loadoption.md –
建立在Michael的答案:IOW,Zack,Intellisense中针对您所加载的对象弹出的任何内容都是有效的参数之三。所以当你键入表格。在列表中出现的属性。包含您可以用作参数的内容。 –