Office.AsyncResult interface
Un objeto que encapsula el resultado de una solicitud asincrónica, incluida la información de estado y error si la solicitud falla.
Cuando se ejecuta la callback
función que se pasa al parámetro de un método "Async", recibe un objeto AsyncResult al que puede acceder desde el único parámetro de la callback
función.
Comentarios
Ejemplos
// The following is an example applicable to content and task pane add-ins.
// The example shows a call to the getSelectedDataAsync method of the Document object.
Office.context.document.getSelectedDataAsync(
Office.CoercionType.Text,
{
valueFormat: Office.ValueFormat.Unformatted,
filterType: Office.FilterType.All
},
(result) => {
if (result.status === Office.AsyncResultStatus.Succeeded) {
const dataValue = result.value; // Get selected data.
console.log('Selected data is ' + dataValue);
} else {
const err = result.error;
console.log(err.name + ": " + err.message);
}
}
);
// The anonymous function passed as the callback argument ((result) => {...}) has a single
// parameter named result that provides access to an AsyncResult object when the function executes.
// When the call to the getSelectedDataAsync method completes, the callback function executes,
// and the following line of code accesses the value property of the AsyncResult object to
// return the data selected in the document:
// const dataValue = result.value;
// Note that other lines of code in the function use the result parameter of the callback function
// to access the status and error properties of the AsyncResult object.
Propiedades
async |
Obtiene el elemento definido por el usuario pasado al parámetro opcional |
diagnostics | Obtiene un objeto que puede proporcionar información adicional si se produjo un error . |
error | Obtiene un objeto Office.Error que proporciona una descripción del error, si se produjo algún error. |
status | Obtiene el Office.AsyncResultStatus de la operación asincrónica. |
value | Obtiene la carga o el contenido de una operación asincrónica, si la hay. |
Detalles de las propiedades
asyncContext
Obtiene el elemento definido por el usuario pasado al parámetro opcional asyncContext
del método invocado en el mismo estado en que se pasó. Esto devuelve el elemento definido por el usuario (que puede ser de cualquier tipo de JavaScript: String, Number, Boolean, Object, Array, Null o Undefined) pasado al parámetro opcional asyncContext
del método invocado. Si no se envió ningún elemento al parámetro asyncContext, devuelve Undefined.
asyncContext: any;
Valor de propiedad
any
Ejemplos
function getDataWithContext() {
const format = "Your data: ";
Office.context.document.getSelectedDataAsync(
Office.CoercionType.Text,
{ asyncContext: format },
showDataWithContext);
}
function showDataWithContext(asyncResult) {
write(asyncResult.asyncContext + asyncResult.value);
}
// Function that writes to a div with id='message' on the page.
function write(message){
document.getElementById('message').innerText += message;
}
diagnostics
Obtiene un objeto que puede proporcionar información adicional si se produjo un error .
diagnostics: any;
Valor de propiedad
any
Comentarios
Esta propiedad devuelve información adicional si se producen los siguientes errores con estas API admitidas.
API admitidas
Office.context.mailbox.item.getCallbackTokenAsync
, Office.context.mailbox.item.getUserIdentityTokenAsync
Errores admitidos
AsyncResult.error.name | AsyncResult.error.message | Descripción del objeto de diagnóstico devuelto |
---|---|---|
HTTPRequestFailure | Se ha producido un error en la solicitud. Compruebe el objeto de diagnóstico para ver el código de error HTTP. | Código de error HTTP en un objeto JSON, por ejemplo, {"HTTPCode":"401"} . |
InternalServerError | El servidor de Exchange devolvió un error. Compruebe el objeto de diagnóstico para obtener más información. | Mensaje de error del servidor exchange en un objeto JSON, por ejemplo, {"ErrorText": "The mailbox database is temporarily unavailable"} . |
error
Obtiene un objeto Office.Error que proporciona una descripción del error, si se produjo algún error.
error: Office.Error;
Valor de propiedad
Ejemplos
function getData() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.Table, function(asyncResult) {
if (asyncResult.status == Office.AsyncResultStatus.Failed) {
write(asyncResult.error.message);
}
else {
write(asyncResult.value);
}
});
}
// Function that writes to a div with id='message' on the page.
function write(message){
document.getElementById('message').innerText += message;
}
status
Obtiene el Office.AsyncResultStatus de la operación asincrónica.
status: AsyncResultStatus;
Valor de propiedad
Ejemplos
function getData() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.Table, function(asyncResult) {
if (asyncResult.status == Office.AsyncResultStatus.Failed) {
write(asyncResult.error.message);
}
else {
write(asyncResult.value);
}
});
}
// Function that writes to a div with id='message' on the page.
function write(message){
document.getElementById('message').innerText += message;
}
value
Obtiene la carga o el contenido de una operación asincrónica, si la hay.
value: T;
Valor de propiedad
T
Comentarios
Tiene acceso al objeto AsyncResult de la función pasada como argumento al parámetro de devolución de llamada de un método "Async", como los getSelectedDataAsync
métodos y setSelectedDataAsync
del objeto Document .
Nota: Lo que devuelve la propiedad value para un método "asincrónico" determinado varía según el propósito y el contexto de ese método. To determine what is returned by the value property for an "Async" method, refer to the "Callback value" section of the method's topic.
Ejemplos
function getData() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.Table, function(asyncResult) {
if (asyncResult.status == Office.AsyncResultStatus.Failed) {
write(asyncResult.error.message);
}
else {
write(asyncResult.value);
}
});
}
// Function that writes to a div with id='message' on the page.
function write(message){
document.getElementById('message').innerText += message;
}