CustomFunctions.StreamingInvocation interface
Содержит сведения о вызове пользовательской функции потоковой передачи. Пользовательская функция потоковой передачи может предоставлять результаты, которые могут изменяться с течением времени.
Вызовите setResult()
один или несколько раз, чтобы предоставить результат, а не возвращать результат из функции.
- Extends
Свойства
set |
Задайте результат для пользовательской функции. Может вызываться несколько раз. |
Сведения о свойстве
setResult
Задайте результат для пользовательской функции. Может вызываться несколько раз.
setResult: (value: ResultType | Error) => void;
Значение свойства
(value: ResultType | CustomFunctions.Error) => void
Комментарии
[ Набор API: CustomFunctionsRuntime 1.1 ]
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/16-custom-functions/streaming-function.yaml
/** @CustomFunction
* @description Increments the cell with a given amount at a specified interval in milliseconds.
* @param {number} amount - The amount to add to the cell value on each increment.
* @param {number} interval - The time in milliseconds to wait before the next increment on the cell.
* @param {CustomFunctions.StreamingInvocation<number>} invocation - Parameter to send results to Excel
* or respond to the user canceling the function.
* @returns An incrementing value.
*/
function increment(amount: number, interval: number, invocation: CustomFunctions.StreamingInvocation<number>): void {
let result = 0;
const timer = setInterval(() => {
result += amount;
invocation.setResult(result);
}, interval);
invocation.onCanceled = () => {
clearInterval(timer);
}
}
Office Add-ins