Compartir a través de


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

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.

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; 
}