OfficeExtension.TrackedObjects class
Colección de objetos de seguimiento, contenidos en un contexto de solicitud. Consulte context.trackedObjects para obtener más información.
Comentarios
Usada por
Ejemplos
// This sample creates many one-cell ranges, then removes each
// cell proxy object from memory before the batch operation completes.
await Excel.run(async (context) => {
const largeRange = context.workbook.getSelectedRange();
largeRange.load(["rowCount", "columnCount"]);
await context.sync();
const trackedObjects: OfficeExtension.TrackedObjects = context.trackedObjects;
for (let i = 0; i < largeRange.rowCount; i++) {
for (let j = 0; j < largeRange.columnCount; j++) {
const cell = largeRange.getCell(i, j);
cell.values = [[i *j]];
// Release the cell proxy object from memory now that we're
// done with it. The memory is freed on the next context.sync() call.
trackedObjects.remove(cell);
}
}
await context.sync();
});
Métodos
| add(object) | Realice un seguimiento de un nuevo objeto para realizar un ajuste automático en función de los cambios circundantes en el documento. Solo algunos tipos de objetos requieren esto. Si usa un objeto a través de llamadas ".sync" y fuera de la ejecución secuencial de un lote ".run" y recibe un error "InvalidObjectPath" al establecer una propiedad o invocar un método en el objeto, debe haber agregado el objeto a la colección de objetos de seguimiento cuando se creó el objeto por primera vez. Si este objeto forma parte de una colección de Word, también debe realizar un seguimiento de la colección primaria. |
| add(objects) | Realice un seguimiento de un conjunto de objetos para realizar un ajuste automático en función de los cambios circundantes en el documento. Solo algunos tipos de objetos requieren esto. Si usa un objeto a través de llamadas ".sync" y fuera de la ejecución secuencial de un lote ".run" y recibe un error "InvalidObjectPath" al establecer una propiedad o invocar un método en el objeto, debe haber agregado el objeto a la colección de objetos de seguimiento cuando se creó el objeto por primera vez. Si este objeto forma parte de una colección de Word, también debe realizar un seguimiento de la colección primaria. |
| remove(object) | Si el objeto proxy especificado ya está en esta colección, este método libera la memoria asociada al objeto . Debe llamar |
| remove(objects) | Si los objetos proxy especificados ya están en esta colección, este método libera la memoria asociada a los objetos . Debe llamar |
Detalles del método
add(object)
Realice un seguimiento de un nuevo objeto para realizar un ajuste automático en función de los cambios circundantes en el documento. Solo algunos tipos de objetos requieren esto. Si usa un objeto a través de llamadas ".sync" y fuera de la ejecución secuencial de un lote ".run" y recibe un error "InvalidObjectPath" al establecer una propiedad o invocar un método en el objeto, debe haber agregado el objeto a la colección de objetos de seguimiento cuando se creó el objeto por primera vez. Si este objeto forma parte de una colección de Word, también debe realizar un seguimiento de la colección primaria.
add(object: ClientObject): void;
Parámetros
- object
- OfficeExtension.ClientObject
Devoluciones
void
Ejemplos
// This sample shows how to track a Word proxy object so it can be used
// across multiple context.sync() calls.
await Word.run(async (context) => {
// Create a paragraph proxy object.
const paragraph = context.document.body.insertParagraph(
"This paragraph is tracked across sync calls.",
Word.InsertLocation.end
);
// Track the paragraph so it remains valid across sync calls.
context.trackedObjects.add(paragraph);
await context.sync();
// The tracked paragraph can still be used after the preceding sync.
paragraph.font.bold = true;
await context.sync();
// Remember to release the object from memory once you're done with it.
context.trackedObjects.remove(paragraph);
await context.sync();
});
add(objects)
Realice un seguimiento de un conjunto de objetos para realizar un ajuste automático en función de los cambios circundantes en el documento. Solo algunos tipos de objetos requieren esto. Si usa un objeto a través de llamadas ".sync" y fuera de la ejecución secuencial de un lote ".run" y recibe un error "InvalidObjectPath" al establecer una propiedad o invocar un método en el objeto, debe haber agregado el objeto a la colección de objetos de seguimiento cuando se creó el objeto por primera vez. Si este objeto forma parte de una colección de Word, también debe realizar un seguimiento de la colección primaria.
add(objects: ClientObject[]): void;
Parámetros
- objects
Devoluciones
void
remove(object)
Si el objeto proxy especificado ya está en esta colección, este método libera la memoria asociada al objeto . Debe llamar context.sync() a antes de que la versión de memoria surta efecto. Si el objeto proxy especificado no está en esta colección, el objeto proxy no se almacenará después de context.sync() llamar a . Esto acelera las instancias en las que se crean muchos objetos para operaciones de un solo uso.
remove(object: ClientObject): void;
Parámetros
- object
- OfficeExtension.ClientObject
Devoluciones
void
Ejemplos
// This sample inserts many paragraphs into a Word document, removing each
// paragraph proxy object from memory after it's used.
await Word.run(async (context) => {
const body = context.document.body;
for (let i = 0; i < 500; i++) {
const paragraph = body.insertParagraph(`Paragraph ${i}`, Word.InsertLocation.end);
// Release the paragraph proxy object from memory now that we're
// done with it. The memory is freed on the next context.sync() call.
context.trackedObjects.remove(paragraph);
}
await context.sync();
});
remove(objects)
Si los objetos proxy especificados ya están en esta colección, este método libera la memoria asociada a los objetos . Debe llamar context.sync() a antes de que la versión de memoria surta efecto. Si los objetos de proxy especificados no están en esta colección, los objetos proxy no se almacenarán después de context.sync() llamar a . Esto acelera las instancias en las que se crean muchos objetos para operaciones de un solo uso.
remove(objects: ClientObject[]): void;
Parámetros
- objects
Devoluciones
void