Mac 版 Outlook 不缓存自定义属性。 如果用户的网络出现故障,邮件加载项无法访问其自定义属性。
最低权限级别
:
读取项
适用的 Outlook 模式
:撰写或阅读
返回一个 对象,该对象具有名称/值对集合中的所有自定义属性。 下面是等效项。
customProps.get("name")
var dictionary = customProps.getAll(); dictionary["name"]
可以循环访问字典对象以发现所有
names
和
values
。
remove(name)
从自定义属性集合中移除指定的属性。
若要永久删除属性,必须调用
saveAsync
对象的 方法
CustomProperties
。
save
Async(callback, async
Context)
将自定义属性保存到邮件或约会。
必须调用 方法才能
saveAsync
保留对
set
方法或
remove
对象的 方法
CustomProperties
所做的任何更改。 保存操作是异步操作。
最好让回调函数检查并从 中处理错误
saveAsync
。 尤其要注意的是,当用户在阅读窗体中处于连接状态时,可以激活阅读外接程序,随后用户将断开连接。 如果外接程序在断开状态下调用
saveAsync
,
saveAsync
将返回错误。 回调函数应相应地处理此错误。
save
Async(async
Context)
将自定义属性保存到邮件或约会。
必须调用 方法才能
saveAsync
保留对
set
方法或
remove
对象的 方法
CustomProperties
所做的任何更改。 保存操作是异步操作。
最好让回调函数检查并从 中处理错误
saveAsync
。 尤其要注意的是,当用户在阅读窗体中处于连接状态时,可以激活阅读外接程序,随后用户将断开连接。 如果外接程序在断开状态下调用
saveAsync
,
saveAsync
将返回错误。 回调函数应相应地处理此错误。
set(name, value)
将指定属性设置为指定值。
set
方法将指定属性设置为指定值。 若要确保设置属性和值保留在邮件项上,必须调用
saveAsync
方法。
如果尚不存在指定属性,
set
方法将创建一个新的属性;否则现有值将替换为新值。 参数可以是任何类型;但是始终作为字符串传递给服务器。
适用的 Outlook 模式
:撰写或阅读
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml
const propertyName = $("#propertyName").val();
const propertyValue = customProps.get(propertyName);
$("#propertyValue").val(propertyValue);
console.log(`The value of custom property "${propertyName}" is "${propertyValue}".`);
返回一个 对象,该对象具有名称/值对集合中的所有自定义属性。 下面是等效项。
customProps.get("name")
var dictionary = customProps.getAll(); dictionary["name"]
可以循环访问字典对象以发现所有 names
和 values
。
getAll(): any;
具有名称/值对集合中的所有自定义属性的对象。
[ API set: Mailbox 1.9 ]
最低权限级别: 读取项
适用的 Outlook 模式:撰写或阅读
remove(name)
适用的 Outlook 模式:撰写或阅读
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml
const propertyName = $("#propertyName").val();
customProps.remove(propertyName);
console.log(`Custom property "${propertyName}" removed.`);
将自定义属性保存到邮件或约会。
必须调用 方法才能 saveAsync
保留对 set
方法或 remove
对象的 方法 CustomProperties
所做的任何更改。 保存操作是异步操作。
最好让回调函数检查并从 中处理错误 saveAsync
。 尤其要注意的是,当用户在阅读窗体中处于连接状态时,可以激活阅读外接程序,随后用户将断开连接。 如果外接程序在断开状态下调用 saveAsync
,saveAsync
将返回错误。 回调函数应相应地处理此错误。
saveAsync(callback: (asyncResult: Office.AsyncResult<void>) => void, asyncContext?: any): void;
callback
(asyncResult: Office.AsyncResult<void>) => void
方法完成后,使用类型的Office.AsyncResult
单个参数调用在 参数中callback
传递的函数。
asyncContext
可选。 传递给回调函数的任何状态数据。
[ API set: Mailbox 1.1 ]
重要提示:在 Outlook on Windows 中,在撰写模式下保存的自定义属性仅在正在撰写的项目关闭或调用后 Office.context.mailbox.item.saveAsync
保留。
最低权限级别: 读取项
适用的 Outlook 模式:撰写或阅读
// The following JavaScript code sample shows how to asynchronously use
// the loadCustomPropertiesAsync method to load custom properties that
// are specific to the current item, and the saveAsync method to save
// these to the mail item. After loading the custom properties,
// the code sample uses the get method to read the custom property myProp,
// the set method to write the custom property myProp, and then finally
// calls the saveAsync method to save the custom properties.
// The initialize function is required for all add-ins.
Office.initialize = function () {
// Checks for the DOM to load using the jQuery ready method.
$(document).ready(function () {
// After the DOM is loaded, add-in-specific code can run.
const item = Office.context.mailbox.item;
item.loadCustomPropertiesAsync(customPropsCallback);
function customPropsCallback(asyncResult) {
const customProps = asyncResult.value;
const myProp = customProps.get("myProp");
console.log("myProp: " + myProp); // First run on current item will return `undefined`.
// Set myProp custom property.
customProps.set("myProp", "value");
customProps.saveAsync(saveCallback);
function saveCallback(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.error(asyncResult.error.message);
else {
// Async call to save custom properties completed.
// Proceed to do the appropriate for your add-in.
将自定义属性保存到邮件或约会。
必须调用 方法才能 saveAsync
保留对 set
方法或 remove
对象的 方法 CustomProperties
所做的任何更改。 保存操作是异步操作。
最好让回调函数检查并从 中处理错误 saveAsync
。 尤其要注意的是,当用户在阅读窗体中处于连接状态时,可以激活阅读外接程序,随后用户将断开连接。 如果外接程序在断开状态下调用 saveAsync
,saveAsync
将返回错误。 回调函数应相应地处理此错误。
saveAsync(asyncContext?: any): void;
asyncContext
可选。 传递给回调函数的任何状态数据。
将指定属性设置为指定值。
set
方法将指定属性设置为指定值。 若要确保设置属性和值保留在邮件项上,必须调用 saveAsync
方法。
如果尚不存在指定属性,set
方法将创建一个新的属性;否则现有值将替换为新值。 参数可以是任何类型;但是始终作为字符串传递给服务器。
set(name: string, value: string): void;
string
要设置的属性的名称。
value
string
要设置的属性的值。
适用的 Outlook 模式:撰写或阅读
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml
const propertyName = $("#propertyName").val();
const propertyValue = $("#propertyValue").val();
customProps.set(propertyName, propertyValue);
console.log(`Custom property "${propertyName}" set to value "${propertyValue}".`);