Office.MasterCategories interface  
表示邮箱上的类别主列表。
在 Outlook 中,用户可以通过使用类别对邮件和约会进行颜色编码来标记邮件和约会。 用户在其邮箱的主列表中定义类别。 然后,他们可以将一个或多个类别应用于项目。
重要说明:在委托或共享方案中,委托可以获取主列表中的类别,但不能添加或删除类别。
方法
| add | 
	将类别添加到邮箱上的主列表。 每个类别必须具有唯一的名称,但多个类别可以使用相同的颜色。  | 
| add | 
	将类别添加到邮箱上的主列表。 每个类别必须具有唯一的名称,但多个类别可以使用相同的颜色。  | 
| get | 
	获取邮箱上类别的主列表。  | 
| get | 
	获取邮箱上类别的主列表。  | 
| remove | 
	从邮箱的主控列表中删除类别。  | 
| remove | 
	从邮箱的主控列表中删除类别。  | 
方法详细信息
		addAsync(categories, options, callback)
	 
	将类别添加到邮箱上的主列表。 每个类别必须具有唯一的名称,但多个类别可以使用相同的颜色。
addAsync(categories: CategoryDetails[], options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
				参数
- categories
 
要添加到邮箱主列表的类别。
- options
 - Office.AsyncContextOptions
 
包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。
- callback
 - 
				
(asyncResult: Office.AsyncResult<void>) => void
 
可选。 方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
错误:
DuplicateCategory:提供的类别之一已在主类别列表中。PermissionDenied:用户没有执行此作的权限。
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/45-categories/work-with-master-categories.yaml
const masterCategoriesToAdd = [
  {
    displayName: "TestCategory",
    color: Office.MailboxEnums.CategoryColor.Preset0
  }
];
Office.context.mailbox.masterCategories.addAsync(masterCategoriesToAdd, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Successfully added categories to master list");
  } else {
    console.log("masterCategories.addAsync call failed with error: " + asyncResult.error.message);
  }
});
	
		addAsync(categories, callback)
	 
	将类别添加到邮箱上的主列表。 每个类别必须具有唯一的名称,但多个类别可以使用相同的颜色。
addAsync(categories: CategoryDetails[], callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
				参数
- categories
 
要添加到邮箱主列表的类别。
- callback
 - 
				
(asyncResult: Office.AsyncResult<void>) => void
 
可选。 方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
错误:
DuplicateCategory:提供的类别之一已在主类别列表中。PermissionDenied:用户没有执行此作的权限。
		getAsync(options, callback)
	 
	获取邮箱上类别的主列表。
getAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<CategoryDetails[]>) => void): void;
				参数
- options
 - Office.AsyncContextOptions
 
包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。
- callback
 - 
				
(asyncResult: Office.AsyncResult<Office.CategoryDetails[]>) => void
 
方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。 如果添加类别失败,属性 asyncResult.error 将包含错误代码。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
		getAsync(callback)
	 
	获取邮箱上类别的主列表。
getAsync(callback: (asyncResult: Office.AsyncResult<CategoryDetails[]>) => void): void;
				参数
- callback
 - 
				
(asyncResult: Office.AsyncResult<Office.CategoryDetails[]>) => void
 
方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/45-categories/work-with-master-categories.yaml
Office.context.mailbox.masterCategories.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const categories = asyncResult.value;
    if (categories && categories.length > 0) {
      console.log("Master categories:");
      console.log(JSON.stringify(categories));
    } else {
      console.log("There are no categories in the master list.");
    }
  } else {
    console.error(asyncResult.error);
  }
});
	
		removeAsync(categories, options, callback)
	 
	从邮箱的主控列表中删除类别。
removeAsync(categories: string[], options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
				参数
- categories
 - 
				
string[]
 
要从邮箱的主控列表中删除的类别。
- options
 - Office.AsyncContextOptions
 
包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。
- callback
 - 
				
(asyncResult: Office.AsyncResult<void>) => void
 
可选。 方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。 如果删除类别失败,属性 asyncResult.error 将包含错误代码。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
错误:
- 
              
PermissionDenied:用户没有执行此作的权限。 
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/45-categories/work-with-master-categories.yaml
const masterCategoriesToRemove = ["TestCategory"];
Office.context.mailbox.masterCategories.removeAsync(masterCategoriesToRemove, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Successfully removed categories from master list");
  } else {
    console.log("masterCategories.removeAsync call failed with error: " + asyncResult.error.message);
  }
});
	
		removeAsync(categories, callback)
	 
	从邮箱的主控列表中删除类别。
removeAsync(categories: string[], callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
				参数
- categories
 - 
				
string[]
 
要从邮箱的主控列表中删除的类别。
- callback
 - 
				
(asyncResult: Office.AsyncResult<void>) => void
 
可选。 方法完成后,使用类型的Office.AsyncResult单个参数调用在 参数中callback传递的函数。 如果删除类别失败,属性 asyncResult.error 将包含错误代码。
返回
void
注解
最低权限级别: 读/写邮箱
适用的 Outlook 模式:Compose或读取
错误:
- 
              
PermissionDenied:用户没有执行此作的权限。