Word.CoauthoringLockCollection class
Представляет коллекцию блокировок совместного редактирования в документе Word.
- Extends
Комментарии
Этот API работает только с устаревшими блокировками совместного редактирования. Это не применимо к современному совместному редактированию OneDrive или SharePoint, где управление блокировками обрабатывается службой автоматически. Вызовы в современном документе завершаются ошибкой GeneralException .
Используется
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/05-coauthoring/manage-coauthoring-locks.yaml
// Gets all coauthoring locks in the document.
await Word.run(async (context) => {
const locks: Word.CoauthoringLockCollection = context.document.coauthoring.locks;
locks.load("items/type");
await context.sync();
if (locks.items.length === 0) {
console.log("No locks found in the document.");
return;
}
console.log(`Found ${locks.items.length} lock(s) in the document:`);
for (let i = 0; i < locks.items.length; i++) {
const lock: Word.CoauthoringLock = locks.items[i];
console.log(` Lock ${i + 1}: type = ${lock.type}`);
}
});
Свойства
| context | Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office. |
| items | Получает загруженные дочерние элементы в этой коллекции. |
Методы
| add(options) | Возвращает объект, |
| load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| toJSON() | Переопределяет метод JavaScript |
| track() | Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех |
| unlock |
Удаляет все эфемерные блокировки из документа. |
| untrack() | Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить |
Сведения о свойстве
context
Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.
context: RequestContext;
Значение свойства
items
Получает загруженные дочерние элементы в этой коллекции.
readonly items: Word.CoauthoringLock[];
Значение свойства
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/05-coauthoring/manage-coauthors.yaml
// Gets the locks held by each coauthor in the document.
await Word.run(async (context) => {
const authors: Word.CoauthorCollection = context.document.coauthoring.authors;
authors.load("items/name");
await context.sync();
if (authors.items.length === 0) {
console.log("No coauthors are currently editing this document.");
return;
}
authors.items.forEach((author: Word.Coauthor) => {
author.locks.load("items/type");
});
await context.sync();
authors.items.forEach((author: Word.Coauthor) => {
const lockCount = author.locks.items.length;
if (lockCount === 0) {
console.log(`${author.name}: no locks`);
} else {
const types = author.locks.items.map((l) => l.type).join(", ");
console.log(`${author.name}: ${lockCount} lock(s) — ${types}`);
}
});
});
Сведения о методе
add(options)
Возвращает объект, CoauthoringLock представляющий блокировку, добавленную в указанный диапазон.
add(options?: Word.CoauthoringLockAddOptions): Word.CoauthoringLock;
Параметры
- options
- Word.CoauthoringLockAddOptions
Необязательный параметр. Параметры для дальнейшей настройки блокировки совместного редактирования.
Возвращаемое значение
Комментарии
Этот API работает только с устаревшими блокировками совместного редактирования. Это не применимо к современному совместному редактированию OneDrive или SharePoint, где управление блокировками обрабатывается службой автоматически. Вызовы в современном документе завершаются ошибкой GeneralException .
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/05-coauthoring/manage-coauthoring-locks.yaml
// Adds a lock to the paragraph at the insertion point.
// Requires the document to be saved to OneDrive or SharePoint.
await Word.run(async (context) => {
const coauthoring: Word.Coauthoring = context.document.coauthoring;
coauthoring.load("canCoauthor");
await context.sync();
if (!coauthoring.canCoauthor) {
console.warn("This document doesn't support coauthoring. Save it to OneDrive or SharePoint and try again.");
return;
}
const locks: Word.CoauthoringLockCollection = coauthoring.locks;
locks.add();
await context.sync();
console.log("Lock added.");
});
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(options?: Word.Interfaces.CoauthoringLockCollectionLoadOptions & Word.Interfaces.CollectionLoadOptions): Word.CoauthoringLockCollection;
Параметры
- options
-
Word.Interfaces.CoauthoringLockCollectionLoadOptions & Word.Interfaces.CollectionLoadOptions
Предоставляет параметры для загружаемых свойств объекта.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNames?: string | string[]): Word.CoauthoringLockCollection;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Word.CoauthoringLockCollection;
Параметры
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.
Возвращаемое значение
toJSON()
Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Word.CoauthoringLockCollection объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Word.Interfaces.CoauthoringLockCollectionData), который содержит массив «items» с неглубокими копиями любых загруженных свойств из элементов коллекции.
toJSON(): Word.Interfaces.CoauthoringLockCollectionData;
Возвращаемое значение
track()
Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех .sync вызовах и вне последовательного выполнения пакета ".run" и получаете сообщение об ошибке "InvalidObjectPath" при установке свойства или вызове метода объекта, необходимо добавить объект в коллекцию отслеживаемых объектов при его первом создании. Если этот объект является частью семейства, следует также отслеживать родительскую коллекцию.
track(): Word.CoauthoringLockCollection;
Возвращаемое значение
unlockEphemeralLocks()
Удаляет все эфемерные блокировки из документа.
unlockEphemeralLocks(): void;
Возвращаемое значение
void
Комментарии
Этот API работает только с устаревшими блокировками совместного редактирования. Это не применимо к современному совместному редактированию OneDrive или SharePoint, где управление блокировками обрабатывается службой автоматически. Вызовы в современном документе завершаются ошибкой GeneralException .
untrack()
Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить context.sync() , прежде чем освобождение памяти вступит в силу.
untrack(): Word.CoauthoringLockCollection;