Word.Comment class

表示文档中的注释。

扩展

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Sets a comment on the selected content.
await Word.run(async (context) => {
  const text = $("#comment-text")
    .val()
    .toString();
  const comment: Word.Comment = context.document.getSelection().insertComment(text);

  // Load object to log in the console.
  comment.load();
  await context.sync();

  console.log("Comment inserted:", comment);
});

属性

authorEmail

获取批注作者的电子邮件。

authorName

获取批注作者的姓名。

content

将注释的内容指定为纯文本。

contentRange

指定注释的内容范围。

context

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

creationDate

获取批注的创建日期。

id

获取注释的 ID。

replies

获取与注释关联的回复对象的集合。

resolved

指定注释线程的状态。 将 设置为 true 可解析注释线程。 获取值为 true 意味着注释线程已解析。

方法

delete()

删除批注及其答复。

getRange()

获取注释所在的main文档中的区域。

load(options)

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

load(propertyNames)

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

load(propertyNamesAndPaths)

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

reply(replyText)

将新答复添加到注释线程的末尾。

set(properties, options)

同时设置对象的多个属性。 可以传递具有相应属性的纯对象,也可以传递同一类型的另一个 API 对象。

set(properties)

基于现有的已加载对象,同时对对象设置多个属性。

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,依次调用toJSON传递给它的 对象的 方法。) 虽然原始Word.Comment对象是 API 对象,toJSON但该方法返回一个纯 JavaScript 对象, (类型为 Word.Interfaces.CommentData) ,其中包含从原始对象加载的任何子属性的浅表副本。

track()

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

untrack()

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

属性详细信息

authorEmail

获取批注作者的电子邮件。

readonly authorEmail: string;

属性值

string

注解

[ API 集:WordApi 1.4 ]

authorName

获取批注作者的姓名。

readonly authorName: string;

属性值

string

注解

[ API 集:WordApi 1.4 ]

content

将注释的内容指定为纯文本。

content: string;

属性值

string

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Edits the first active comment in the selected content.
await Word.run(async (context) => {
  const text = $("#edit-comment-text")
    .val()
    .toString();
  const comments: Word.CommentCollection = context.document.getSelection().getComments();
  comments.load("items");
  await context.sync();

  const firstActiveComment: Word.Comment = comments.items.find((item) => item.resolved !== true);
  if (!firstActiveComment) {
    console.warn("No active comment was found in the selection, so couldn't edit.");
    return;
  }

  firstActiveComment.content = text;

  // Load object to log in the console.
  firstActiveComment.load();
  await context.sync();

  console.log("Comment content changed:", firstActiveComment);
});

contentRange

指定注释的内容范围。

contentRange: Word.CommentContentRange;

属性值

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Gets the range of the first comment in the selected content.
await Word.run(async (context) => {
  const comment: Word.Comment = context.document.getSelection().getComments().getFirstOrNullObject();
  comment.load("contentRange");
  const range: Word.Range = comment.getRange();
  range.load("text");
  await context.sync();

  if (comment.isNullObject) {
    console.warn("No comments in the selection, so no range to get.");
    return;
  }

  console.log(`Comment location: ${range.text}`);
  const contentRange: Word.CommentContentRange = comment.contentRange;
  console.log("Comment content range:", contentRange);
});

context

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

context: RequestContext;

属性值

creationDate

获取批注的创建日期。

readonly creationDate: Date;

属性值

Date

注解

[ API 集:WordApi 1.4 ]

id

获取注释的 ID。

readonly id: string;

属性值

string

注解

[ API 集:WordApi 1.4 ]

replies

获取与注释关联的回复对象的集合。

readonly replies: Word.CommentReplyCollection;

属性值

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Gets the replies to the first comment in the selected content.
await Word.run(async (context) => {
  const comment: Word.Comment = context.document.getSelection().getComments().getFirstOrNullObject();
  comment.load("replies");
  await context.sync();

  if (comment.isNullObject) {
    console.warn("No comments in the selection, so no replies to get.");
    return;
  }

  const replies: Word.CommentReplyCollection = comment.replies;
  console.log("Replies to the first comment:", replies);
});

resolved

指定注释线程的状态。 将 设置为 true 可解析注释线程。 获取值为 true 意味着注释线程已解析。

resolved: boolean;

属性值

boolean

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Toggles Resolved status of the first comment in the selected content.
await Word.run(async (context) => {
  const comment: Word.Comment = context.document
    .getSelection()
    .getComments()
    .getFirstOrNullObject();
  comment.load("resolved");
  await context.sync();

  if (comment.isNullObject) {
    console.warn("No comments in the selection, so nothing to toggle.");
    return;
  }

  // Toggle resolved status.
  // If the comment is active, set as resolved.
  // If it's resolved, set resolved to false.
  const resolvedBefore = comment.resolved;
  console.log(`Comment Resolved status (before): ${resolvedBefore}`);
  comment.resolved = !resolvedBefore;
  comment.load("resolved");
  await context.sync();

  console.log(`Comment Resolved status (after): ${comment.resolved}`);
});

方法详细信息

delete()

删除批注及其答复。

delete(): void;

返回

void

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Deletes the first comment in the selected content.
await Word.run(async (context) => {
  const comment: Word.Comment = context.document.getSelection().getComments().getFirstOrNullObject();
  comment.delete();
  await context.sync();

  if (comment.isNullObject) {
    console.warn("No comments in the selection, so nothing to delete.");
    return;
  }

  console.log("Comment deleted.");
});

getRange()

获取注释所在的main文档中的区域。

getRange(): Word.Range;

返回

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Gets the range of the first comment in the selected content.
await Word.run(async (context) => {
  const comment: Word.Comment = context.document.getSelection().getComments().getFirstOrNullObject();
  comment.load("contentRange");
  const range: Word.Range = comment.getRange();
  range.load("text");
  await context.sync();

  if (comment.isNullObject) {
    console.warn("No comments in the selection, so no range to get.");
    return;
  }

  console.log(`Comment location: ${range.text}`);
  const contentRange: Word.CommentContentRange = comment.contentRange;
  console.log("Comment content range:", contentRange);
});

load(options)

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

load(options?: Word.Interfaces.CommentLoadOptions): Word.Comment;

参数

options
Word.Interfaces.CommentLoadOptions

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

返回

load(propertyNames)

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

load(propertyNames?: string | string[]): Word.Comment;

参数

propertyNames

string | string[]

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

返回

load(propertyNamesAndPaths)

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

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): Word.Comment;

参数

propertyNamesAndPaths

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

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

返回

reply(replyText)

将新答复添加到注释线程的末尾。

reply(replyText: string): Word.CommentReply;

参数

replyText

string

必填。 回复文本。

返回

注解

[ API 集:WordApi 1.4 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-comments.yaml

// Replies to the first active comment in the selected content.
await Word.run(async (context) => {
  const text = $("#reply-text")
    .val()
    .toString();
  const comments: Word.CommentCollection = context.document.getSelection().getComments();
  comments.load("items");
  await context.sync();

  const firstActiveComment: Word.Comment = comments.items.find((item) => item.resolved !== true);
  if (firstActiveComment) {
    const reply: Word.CommentReply = firstActiveComment.reply(text);
    console.log("Reply added.");
  } else {
    console.warn("No active comment was found in the selection, so couldn't reply.");
  }
});

set(properties, options)

同时设置对象的多个属性。 可以传递具有相应属性的纯对象,也可以传递同一类型的另一个 API 对象。

set(properties: Interfaces.CommentUpdateData, options?: OfficeExtension.UpdateOptions): void;

参数

properties
Word.Interfaces.CommentUpdateData

一个 JavaScript 对象,其属性按同构方式构造为调用方法的对象的属性。

options
OfficeExtension.UpdateOptions

提供一个选项,用于在 properties 对象尝试设置任何只读属性时禁止显示错误。

返回

void

set(properties)

基于现有的已加载对象,同时对对象设置多个属性。

set(properties: Word.Comment): void;

参数

properties
Word.Comment

返回

void

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,依次调用toJSON传递给它的 对象的 方法。) 虽然原始Word.Comment对象是 API 对象,toJSON但该方法返回一个纯 JavaScript 对象, (类型为 Word.Interfaces.CommentData) ,其中包含从原始对象加载的任何子属性的浅表副本。

toJSON(): Word.Interfaces.CommentData;

返回

track()

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

track(): Word.Comment;

返回

untrack()

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

untrack(): Word.Comment;

返回