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

Доступно только для типов коллекций. Указывает максимальное число элементов в коллекции, которые можно включить в результат.

Сведения о свойстве

expand

Строка с разделителями-запятыми или массив строк, задающая загружаемые свойства навигации.

expand?: string | string[];

Значение свойства

string | string[]

select

Строка с разделителями-запятыми или массив строк, задающая загружаемые свойства.

select?: string | string[];

Значение свойства

string | string[]

skip

Доступно только для типов коллекций. Указывает количество элементов в коллекции, которые должны быть пропущены и не включены в результат. Если указан верхний, результирующий набор начнется после пропуска указанного количества элементов.

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));
            }
        })
    });