id: outlook-roaming-settings-roaming-settings
name: Use add-in settings
description: Gets, sets, saves, and removes add-in roaming settings.
host: OUTLOOK
api_set:
Mailbox: '1.1'
script:
content: |-
document.getElementById("get").addEventListener("click", get);
document.getElementById("set").addEventListener("click", set);
document.getElementById("save").addEventListener("click", save);
document.getElementById("remove").addEventListener("click", remove);
function get() {
const settingName = (document.getElementById("settingName") as HTMLInputElement).value;
const settingValue = Office.context.roamingSettings.get(settingName);
(document.getElementById("settingValue") as HTMLInputElement).value = settingValue;
console.log(`The value of setting "${settingName}" is "${settingValue}".`);
}
function set() {
const settingName = (document.getElementById("settingName") as HTMLInputElement).value;
const settingValue = (document.getElementById("settingValue") as HTMLInputElement).value;
Office.context.roamingSettings.set(settingName, settingValue);
console.log(`Setting "${settingName}" set to value "${settingValue}".`);
}
function save() {
// Save settings in the mailbox to make it available in future sessions.
Office.context.roamingSettings.saveAsync(function(result) {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
} else {
console.log(`Settings saved with status: ${result.status}`);
}
});
}
function remove() {
// Remove the specified setting from the mailbox.
const settingName = (document.getElementById("settingName") as HTMLInputElement).value;
Office.context.roamingSettings.remove(settingName);
console.log(`The "${settingName}" setting has been removed.`);
}
language: typescript
template:
content: |-
This sample shows how to set, save, and get add-in properties that can be accessed the next time the add-in is opened.