2015-11-19 63 views
0

JavaScript和Office API的一般新功能。只是让我的脚湿。有很多东西需要学习。我看到传递给load()函数调用的不同字符串常量,如“name”或“address”。这些是什么以及我们如何找到它们?它没有智能。什么是我们可以传递的.load()常量?

例如

getRange.load('address') 

table.load("name") 

TIA, 扎克Barresse

+0

顺便说一句,我看过这个线程,我能找到的唯一的事情这是接近,但不是所有的包容性: https://github.com/OfficeDev /office-js-docs/blob/master/excel/resources/loadoption.md –

+0

建立在Michael的答案:IOW,Zack,Intellisense中针对您所加载的对象弹出的任何内容都是有效的参数之三。所以当你键入表格。在列表中出现的属性。包含您可以用作参数的内容。 –

回答

1

之所以称之为 “负载” 的方法,因为你想让你的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