OneNote.Section class

表示 OneNote 分区。 分区可包含页面。

Extends

注解

[ API 集:OneNoteApi 1.1 ]

属性

clientUrl

分区的客户端 url。 只读

context

与 对象关联的请求上下文。 这会将加载项的进程连接到 Office 主机应用程序的进程。

id

获取分区的 ID。 只读。

isEncrypted

如果此部分使用密码加密,则为 True。 只读

isLocked

如果此部分已锁定,则为 True。 只读

name

获取分区的名称。 只读。

notebook

获取包含分区的笔记本。 只读。

pages

分区中的页面集合。 只读

parentSectionGroup

获取包含分区的分区组。 如果分区是笔记本的直接子级,则引发 ItemNotFound。 只读。

parentSectionGroupOrNull

获取包含分区的分区组。 如果分区是笔记本的直接子级,则返回 null。 只读。

webUrl

页面的 Web URL。 只读

方法

addPage(title)

添加新页面至分区结尾。

copyToNotebook(destinationNotebook)

将此分区复制到指定的笔记本。

copyToSectionGroup(destinationSectionGroup)

将此分区复制到指定的分区组。

getRestApiId()

获取 REST API ID。

insertSectionAsSibling(location, title)

在当前分区之前或之后插入一个新的分区。

insertSectionAsSibling(locationString, title)

在当前分区之前或之后插入一个新的分区。

load(options)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNames)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNamesAndPaths)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来,调用toJSON传递给它的 对象的 方法。) 而原始的 OneNote.Section 对象是 API 对象,toJSON该方法返回一个纯 JavaScript 对象, (类型为 OneNote.Interfaces.SectionData) ,该对象包含从原始对象加载的任何子属性的浅表副本。

track()

根据文档中的相应更改来跟踪对象,以便进行自动调整。 此调用是 的 context.trackedObjects.add(thisObject)简写。 如果跨 .sync 调用和在“.run”批处理的顺序执行之外使用此对象,并在对对象设置属性或调用方法时收到“InvalidObjectPath”错误,则需要在首次创建对象时将对象添加到跟踪的对象集合。

untrack()

释放与此对象关联的内存(如果先前已跟踪过)。 此调用是 的 context.trackedObjects.remove(thisObject)简写。 拥有许多跟踪对象会降低主机应用程序的速度,因此请在使用完毕后释放所添加的任何对象。 在内存释放生效之前,需要调用 。context.sync()

属性详细信息

clientUrl

分区的客户端 url。 只读

readonly clientUrl: string;

属性值

string

注解

[ API 集:OneNoteApi 1.1 ]

context

与 对象关联的请求上下文。 这会将加载项的进程连接到 Office 主机应用程序的进程。

context: RequestContext;

属性值

id

获取分区的 ID。 只读。

readonly id: string;

属性值

string

注解

[ API 集:OneNoteApi 1.1 ]

isEncrypted

如果此部分使用密码加密,则为 True。 只读

readonly isEncrypted: boolean;

属性值

boolean

注解

[ API 集:OneNoteApi 1.2 ]

isLocked

如果此部分已锁定,则为 True。 只读

readonly isLocked: boolean;

属性值

boolean

注解

[ API 集:OneNoteApi 1.2 ]

name

获取分区的名称。 只读。

readonly name: string;

属性值

string

注解

[ API 集:OneNoteApi 1.1 ]

notebook

获取包含分区的笔记本。 只读。

readonly notebook: OneNote.Notebook;

属性值

注解

[ API 集:OneNoteApi 1.1 ]

pages

分区中的页面集合。 只读

readonly pages: OneNote.PageCollection;

属性值

注解

[ API 集:OneNoteApi 1.1 ]

parentSectionGroup

获取包含分区的分区组。 如果分区是笔记本的直接子级,则引发 ItemNotFound。 只读。

readonly parentSectionGroup: OneNote.SectionGroup;

属性值

注解

[ API 集:OneNoteApi 1.1 ]

parentSectionGroupOrNull

获取包含分区的分区组。 如果分区是笔记本的直接子级,则返回 null。 只读。

readonly parentSectionGroupOrNull: OneNote.SectionGroup;

属性值

注解

[ API 集:OneNoteApi 1.1 ]

webUrl

页面的 Web URL。 只读

readonly webUrl: string;

属性值

string

注解

[ API 集:OneNoteApi 1.1 ]

方法详细信息

addPage(title)

添加新页面至分区结尾。

addPage(title: string): OneNote.Page;

参数

title

string

新页面的标题。

返回

注解

[ API 集:OneNoteApi 1.1 ]

示例

await OneNote.run(async (context) => {
            
    // Queue a command to add a page to the current section.
    const page = context.application.getActiveSection().addPage("Wish list");
            
    // Queue a command to load the id and title of the new page.
    // This example loads the new page so it can read its properties later.
    page.load('id,title');
            
    // Run the queued commands, and return a promise to indicate task completion.
    await context.sync();
             
    // Display the properties.
    console.log("Page name: " + page.title);
    console.log("Page ID: " + page.id);
});

copyToNotebook(destinationNotebook)

将此分区复制到指定的笔记本。

copyToNotebook(destinationNotebook: OneNote.Notebook): OneNote.Section;

参数

destinationNotebook
OneNote.Notebook

要将此分区复制到的笔记本。

返回

注解

[ API 集:OneNoteApi 1.1 ]

示例

await OneNote.run(async (context) => {
    const app = context.application;
    
    // Gets the active Notebook.
    const notebook = app.getActiveNotebook();
    
    // Gets the active Section.
    const section = app.getActiveSection();
    
    let newSection;
    
    await context.sync();

    newSection = section.copyToNotebook(notebook);
    newSection.load('id');
    await context.sync();
    
    console.log(newSection.id);
});

copyToSectionGroup(destinationSectionGroup)

将此分区复制到指定的分区组。

copyToSectionGroup(destinationSectionGroup: OneNote.SectionGroup): OneNote.Section;

参数

destinationSectionGroup
OneNote.SectionGroup

要将此分区复制到的分区组。

返回

注解

[ API 集:OneNoteApi 1.1 ]

示例

await OneNote.run(async (context) => {
    const app = context.application;
    
    // Gets the active Notebook.
    const notebook = app.getActiveNotebook();
    
    // Gets the active Section.
    const section = app.getActiveSection();
    
    let newSection;
    
    await context.sync();

    const firstSectionGroup = notebook.sectionGroups.items[0];
    newSection = section.copyToSectionGroup(firstSectionGroup);
    newSection.load('id');
    await context.sync();
    
    console.log(newSection.id);
});

getRestApiId()

获取 REST API ID。

getRestApiId(): OfficeExtension.ClientResult<string>;

返回

注解

[ API 集:OneNoteApi 1.1 ]

示例

await OneNote.run(async (context) => {
    // Get the current section.
    const section = context.application.getActiveSection();
    const restApiId = section.getRestApiId();

    await context.sync();
    console.log("The REST API ID is " + restApiId.value);
    // Note that the REST API ID isn't all you need to interact with the OneNote REST API.
    // This is only required for SharePoint notebooks. baseUrl will be null for OneDrive notebooks.
    // For SharePoint notebooks, the notebook baseUrl should be used to talk to the 
    // OneNote REST API according to the OneNote Development Blog.
    // https://learn.microsoft.com/archive/blogs/onenotedev/and-sharepoint-makes-three
});

insertSectionAsSibling(location, title)

在当前分区之前或之后插入一个新的分区。

insertSectionAsSibling(location: OneNote.InsertLocation, title: string): OneNote.Section;

参数

location
OneNote.InsertLocation

相对于当前分区的新分区的位置。

title

string

新节的名称。

返回

注解

[ API 集:OneNoteApi 1.1 ]

insertSectionAsSibling(locationString, title)

在当前分区之前或之后插入一个新的分区。

insertSectionAsSibling(locationString: "Before" | "After", title: string): OneNote.Section;

参数

locationString

"Before" | "After"

相对于当前分区的新分区的位置。

title

string

新节的名称。

返回

注解

[ API 集:OneNoteApi 1.1 ]

示例

await OneNote.run(async (context) => {
            
    // Queue a command to insert a section after the current section.
    const section = context.application.getActiveSection().insertSectionAsSibling("After", "New section");
            
    // Queue a command to load the id and name of the new section.
    // This example loads the new section so it can read its properties later.
    section.load('id,name');
            
    // Run the queued commands, and return a promise to indicate task completion.
    await context.sync();
             
    // Display the properties.
    console.log("Section name: " + section.name);
    console.log("Section ID: " + section.id);
});

load(options)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(options?: OneNote.Interfaces.SectionLoadOptions): OneNote.Section;

参数

options
OneNote.Interfaces.SectionLoadOptions

提供要加载对象的属性的选项。

返回

load(propertyNames)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNames?: string | string[]): OneNote.Section;

参数

propertyNames

string | string[]

逗号分隔的字符串或指定要加载的属性的字符串数组。

返回

示例

await OneNote.run(async (context) => {
        
    // Get the current section.
    const section = context.application.getActiveSection();
            
    // Queue a command to load the section.
    // For best performance, request specific properties.
    section.load("id");
            
    // Run the queued commands, and return a promise to indicate task completion.
    await context.sync();
    console.log("Section ID: " + section.id);
});

load(propertyNamesAndPaths)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): OneNote.Section;

参数

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select 是一个逗号分隔的字符串,指定要加载的属性,是 propertyNamesAndPaths.expand 一个逗号分隔的字符串,指定要加载的导航属性。

返回

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来,调用toJSON传递给它的 对象的 方法。) 而原始的 OneNote.Section 对象是 API 对象,toJSON该方法返回一个纯 JavaScript 对象, (类型为 OneNote.Interfaces.SectionData) ,该对象包含从原始对象加载的任何子属性的浅表副本。

toJSON(): OneNote.Interfaces.SectionData;

返回

track()

根据文档中的相应更改来跟踪对象,以便进行自动调整。 此调用是 的 context.trackedObjects.add(thisObject)简写。 如果跨 .sync 调用和在“.run”批处理的顺序执行之外使用此对象,并在对对象设置属性或调用方法时收到“InvalidObjectPath”错误,则需要在首次创建对象时将对象添加到跟踪的对象集合。

track(): OneNote.Section;

返回

untrack()

释放与此对象关联的内存(如果先前已跟踪过)。 此调用是 的 context.trackedObjects.remove(thisObject)简写。 拥有许多跟踪对象会降低主机应用程序的速度,因此请在使用完毕后释放所添加的任何对象。 在内存释放生效之前,需要调用 。context.sync()

untrack(): OneNote.Section;

返回