OfficeExtension.LoadOption interface
指定应加载对象的哪些属性。 执行 sync () 方法时会发生此负载。 这会同步 Office 对象与相应的 JavaScript 代理对象之间的状态。
注解
对于 Word,指定属性和分页信息的首选方法是使用字符串文本。 前两个示例说明了请求段落集合中段落的文本和字体大小属性的首选方法:
context.load(paragraphs, 'text, font/size');
paragraphs.load('text, font/size');
下面是使用对象表示法(包括分页)的类似示例:
context.load(paragraphs, {select: 'text, font/size', expand: 'font', top: 50, skip: 0});
paragraphs.load({select: 'text, font/size', expand: 'font', top: 50, skip: 0});
请注意,如果我们未在 select 语句中指定字体对象的特定属性,expand 语句本身将指示需加载所有字体属性。
示例
// This example shows how to get the paragraphs in the Word document
// along with their text and font size properties.
// Run a batch operation against the Word object model.
Word.run(function (context) {
// Create a proxy object for the paragraphs collection.
const paragraphs = context.document.body.paragraphs;
// Queue a command to load the text and font properties.
// It is best practice to always specify the property set.
// Otherwise, all properties are returned on the object.
context.load(paragraphs, 'text, font/size');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
return context.sync().then(function () {
// Insert code that works with the paragraphs loaded by context.load().
})
})
.catch(function (error) {
console.log('Error: ' + JSON.stringify(error));
if (error instanceof OfficeExtension.Error) {
console.log('Debug info: ' + JSON.stringify(error.debugInfo));
}
});
属性
expand | 以逗号分隔的字符串或字符串数组,指定要加载的导航属性。 |
select | 以逗号分隔的字符串或字符串数组,指定要加载的属性。 |
skip | 仅适用于集合类型。 指定集合中要跳过且未包含在结果中的项数。 如果指定了 top,则结果集将在跳过指定数量的项后启动。 |
top | 仅适用于集合类型。 指定结果中可以包含的集合项最大数量。 |
属性详细信息
expand
以逗号分隔的字符串或字符串数组,指定要加载的导航属性。
expand?: string | string[];
属性值
string | string[]
select
以逗号分隔的字符串或字符串数组,指定要加载的属性。
select?: string | string[];
属性值
string | string[]
skip
仅适用于集合类型。 指定集合中要跳过且未包含在结果中的项数。 如果指定了 top,则结果集将在跳过指定数量的项后启动。
skip?: number;
属性值
number
top
仅适用于集合类型。 指定结果中可以包含的集合项最大数量。
top?: number;
属性值
number
示例
// This OneNote example shows how to get the page title and indentation level
// of the top five pages in the current section.
OneNote.run(function (context) {
// Get the pages in the current section.
const pages = context.application.getActiveSection().pages;
// Queue a command to load the pages.
pages.load({ "select":"title,pageLevel", "top":5, "skip":0 });
return context.sync()
.then(function() {
// Iterate through the collection of pages.
$.each(pages.items, function(index, page) {
// Show some properties.
console.log("Page title: " + page.title);
console.log("Indentation level: " + page.pageLevel);
});
}).catch(function(error) {
console.log("Error: " + error);
if (error instanceof OfficeExtension.Error) {
console.log("Debug info: " + JSON.stringify(error.debugInfo));
}
})
});