Word.Field class
Представляет поле.
- Extends
Комментарии
Важно! Дополнительные сведения о том, какие поля можно вставить, см. в разделе Word.Range.insertField
API, представленный в наборе требований 1.5. Поддержка управления полями аналогична поддержке, доступной в пользовательском интерфейсе Word. Однако, хотя пользовательский интерфейс Word в Интернете в основном поддерживает поля только для чтения (см. раздел Коды полей в Word для Интернета), Addin
поле можно редактировать. Дополнительные сведения о клиентах пользовательского интерфейса Word, которые более полно поддерживают поля, см. в списке продуктов в начале раздела Вставка, изменение и просмотр полей в Word.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load(["code", "result", "locked", "type", "data", "kind"]);
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
console.log("Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result), "Type of first field: " + field.type, "Is the first field locked? " + field.locked, "Kind of the first field: " + field.kind);
}
});
Свойства
code | Указывает инструкцию по коду поля. |
context | Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office. |
data | Указывает данные в поле Addin. Если поле не является полем Addin, оно является |
kind | Возвращает тип поля. |
locked | Указывает, заблокировано ли поле.
|
parent |
Возвращает родительский текст поля. |
parent |
Возвращает элемент управления содержимым, содержащий поле . Выдает ошибку |
parent |
Возвращает элемент управления содержимым, содержащий поле . Если родительского элемента управления содержимым нет, этот метод вернет объект со свойством |
parent |
Возвращает таблицу, содержащую поле . Выдает ошибку |
parent |
Возвращает ячейку таблицы, содержащую поле. Выдает ошибку |
parent |
Возвращает ячейку таблицы, содержащую поле. Если он не содержится в ячейке таблицы, этот метод вернет объект со свойством , для него |
parent |
Возвращает таблицу, содержащую поле . Если он не содержится в таблице, то этот метод вернет объект со свойством |
result | Возвращает результирующих данных поля. |
type | Возвращает тип поля. |
Методы
delete() | Удаляет поле. |
get |
Возвращает следующее поле. Выдает ошибку, |
get |
Возвращает следующее поле. Если это поле является последним, то этот метод вернет объект со свойством |
load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
select(selection |
Выбирает поле. |
select(selection |
Выбирает поле. |
set(properties, options) | Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа. |
set(properties) | Задает несколько свойств объекта одновременно на основе существующего загруженного объекта. |
toJSON() | Переопределяет метод JavaScript |
track() | Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением для context.trackedObjects.add(thisObject). Если вы используете этот объект в вызовах |
untrack() | Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращенным для context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вызов потребуется выполнить |
update |
Обновления поле. |
Сведения о свойстве
code
Указывает инструкцию по коду поля.
code: string;
Значение свойства
string
Комментарии
Примечание. Возможность задания кода появилась в WordApi 1.5.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load(["code", "result", "locked", "type", "data", "kind"]);
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
console.log("Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result), "Type of first field: " + field.type, "Is the first field locked? " + field.locked, "Kind of the first field: " + field.kind);
}
});
context
Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office.
context: RequestContext;
Значение свойства
data
Указывает данные в поле Addin. Если поле не является полем Addin, оно является null
и будет вызывать общее исключение при попытке кода задать его.
data: string;
Значение свойства
string
Комментарии
kind
Возвращает тип поля.
readonly kind: Word.FieldKind | "None" | "Hot" | "Warm" | "Cold";
Значение свойства
Word.FieldKind | "None" | "Hot" | "Warm" | "Cold"
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load(["code", "result", "locked", "type", "data", "kind"]);
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
console.log("Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result), "Type of first field: " + field.type, "Is the first field locked? " + field.locked, "Kind of the first field: " + field.kind);
}
});
locked
Указывает, заблокировано ли поле.
true
Значение , если поле заблокировано, в false
противном случае — значение .
locked: boolean;
Значение свойства
boolean
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the selection and toggles between setting it to locked or unlocked.
await Word.run(async (context) => {
let field = context.document.getSelection().fields.getFirstOrNullObject();
field.load(["code", "result", "type", "locked"]);
await context.sync();
if (field.isNullObject) {
console.log("The selection has no fields.");
} else {
console.log(`The first field in the selection is currently ${field.locked ? "locked" : "unlocked"}.`);
field.locked = !field.locked;
await context.sync();
console.log(`The first field in the selection is now ${field.locked ? "locked" : "unlocked"}.`);
}
});
parentBody
Возвращает родительский текст поля.
readonly parentBody: Word.Body;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the parent body of the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load("parentBody/text");
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
const parentBody: Word.Body = field.parentBody;
console.log("Text of first field's parent body: " + JSON.stringify(parentBody.text));
}
});
parentContentControl
Возвращает элемент управления содержимым, содержащий поле . Выдает ошибку ItemNotFound
, если родительского элемента управления содержимым нет.
readonly parentContentControl: Word.ContentControl;
Значение свойства
Комментарии
parentContentControlOrNullObject
Возвращает элемент управления содержимым, содержащий поле . Если родительского элемента управления содержимым нет, этот метод вернет объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentContentControlOrNullObject: Word.ContentControl;
Значение свойства
Комментарии
parentTable
Возвращает таблицу, содержащую поле . Выдает ошибку ItemNotFound
, если она не содержится в таблице.
readonly parentTable: Word.Table;
Значение свойства
Комментарии
parentTableCell
Возвращает ячейку таблицы, содержащую поле. Выдает ошибку ItemNotFound
, если она не содержится в ячейке таблицы.
readonly parentTableCell: Word.TableCell;
Значение свойства
Комментарии
parentTableCellOrNullObject
Возвращает ячейку таблицы, содержащую поле. Если он не содержится в ячейке таблицы, этот метод вернет объект со свойством , для него isNullObject
задано значение true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentTableCellOrNullObject: Word.TableCell;
Значение свойства
Комментарии
parentTableOrNullObject
Возвращает таблицу, содержащую поле . Если он не содержится в таблице, то этот метод вернет объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentTableOrNullObject: Word.Table;
Значение свойства
Комментарии
result
Возвращает результирующих данных поля.
readonly result: Word.Range;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load(["code", "result", "locked", "type", "data", "kind"]);
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
console.log("Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result), "Type of first field: " + field.type, "Is the first field locked? " + field.locked, "Kind of the first field: " + field.kind);
}
});
type
Возвращает тип поля.
readonly type: Word.FieldType | "Addin" | "AddressBlock" | "Advance" | "Ask" | "Author" | "AutoText" | "AutoTextList" | "BarCode" | "Bibliography" | "BidiOutline" | "Citation" | "Comments" | "Compare" | "CreateDate" | "Data" | "Database" | "Date" | "DisplayBarcode" | "DocProperty" | "DocVariable" | "EditTime" | "Embedded" | "EQ" | "Expression" | "FileName" | "FileSize" | "FillIn" | "FormCheckbox" | "FormDropdown" | "FormText" | "GotoButton" | "GreetingLine" | "Hyperlink" | "If" | "Import" | "Include" | "IncludePicture" | "IncludeText" | "Index" | "Info" | "Keywords" | "LastSavedBy" | "Link" | "ListNum" | "MacroButton" | "MergeBarcode" | "MergeField" | "MergeRec" | "MergeSeq" | "Next" | "NextIf" | "NoteRef" | "NumChars" | "NumPages" | "NumWords" | "OCX" | "Page" | "PageRef" | "Print" | "PrintDate" | "Private" | "Quote" | "RD" | "Ref" | "RevNum" | "SaveDate" | "Section" | "SectionPages" | "Seq" | "Set" | "Shape" | "SkipIf" | "StyleRef" | "Subject" | "Subscriber" | "Symbol" | "TA" | "TC" | "Template" | "Time" | "Title" | "TOA" | "TOC" | "UserAddress" | "UserInitials" | "UserName" | "XE" | "Empty" | "Others" | "Undefined";
Значение свойства
Word.FieldType | "Addin" | "AddressBlock" | "Advance" | "Ask" | "Author" | "AutoText" | "AutoTextList" | "BarCode" | "Bibliography" | "BidiOutline" | "Citation" | "Comments" | "Compare" | "CreateDate" | "Data" | "Database" | "Date" | "DisplayBarcode" | "DocProperty" | "DocVariable" | "EditTime" | "Embedded" | "EQ" | "Expression" | "FileName" | "FileSize" | "FillIn" | "FormCheckbox" | "FormDropdown" | "FormText" | "GotoButton" | "GreetingLine" | "Hyperlink" | "If" | "Import" | "Include" | "IncludePicture" | "IncludeText" | "Index" | "Info" | "Keywords" | "LastSavedBy" | "Link" | "ListNum" | "MacroButton" | "MergeBarcode" | "MergeField" | "MergeRec" | "MergeSeq" | "Next" | "NextIf" | "NoteRef" | "NumChars" | "NumPages" | "NumWords" | "OCX" | "Page" | "PageRef" | "Print" | "PrintDate" | "Private" | "Quote" | "RD" | "Ref" | "RevNum" | "SaveDate" | "Section" | "SectionPages" | "Seq" | "Set" | "Shape" | "SkipIf" | "StyleRef" | "Subject" | "Subscriber" | "Symbol" | "TA" | "TC" | "Template" | "Time" | "Title" | "TOA" | "TOC" | "UserAddress" | "UserInitials" | "UserName" | "XE" | "Empty" | "Others" | "Undefined"
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load(["code", "result", "locked", "type", "data", "kind"]);
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
console.log("Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result), "Type of first field: " + field.type, "Is the first field locked? " + field.locked, "Kind of the first field: " + field.kind);
}
});
Сведения о методе
delete()
Удаляет поле.
delete(): void;
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Deletes the first field in the document.
await Word.run(async (context) => {
const field: Word.Field = context.document.body.fields.getFirstOrNullObject();
field.load();
await context.sync();
if (field.isNullObject) {
console.log("This document has no fields.");
} else {
field.delete();
await context.sync();
console.log("The first field in the document was deleted.");
}
});
getNext()
Возвращает следующее поле. Выдает ошибку, ItemNotFound
если это поле является последним.
getNext(): Word.Field;
Возвращаемое значение
Комментарии
getNextOrNullObject()
Возвращает следующее поле. Если это поле является последним, то этот метод вернет объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getNextOrNullObject(): Word.Field;
Возвращаемое значение
Комментарии
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(options?: Word.Interfaces.FieldLoadOptions): Word.Field;
Параметры
- options
- Word.Interfaces.FieldLoadOptions
Предоставляет параметры свойств объекта для загрузки.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNames?: string | string[]): Word.Field;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, указывающих свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Word.Field;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
— это строка с разделителями-запятыми, указывающая загружаемые свойства, и propertyNamesAndPaths.expand
строка с разделителями-запятыми, указывающая загружаемые свойства навигации.
Возвращаемое значение
select(selectionMode)
Выбирает поле.
select(selectionMode?: Word.SelectionMode): void;
Параметры
- selectionMode
- Word.SelectionMode
Необязательный параметр. Режим выбора должен быть "Select", "Start" или "End". Значение по умолчанию — Select.
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets and updates the first field in the selection.
await Word.run(async (context) => {
let field = context.document.getSelection().fields.getFirstOrNullObject();
field.load(["code", "result", "type", "locked"]);
await context.sync();
if (field.isNullObject) {
console.log("No field in selection.");
} else {
console.log("Before updating:", "Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result));
field.updateResult();
field.select();
await context.sync();
field.load(["code", "result"]);
await context.sync();
console.log("After updating:", "Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result));
}
});
select(selectionModeString)
Выбирает поле.
select(selectionModeString?: "Select" | "Start" | "End"): void;
Параметры
- selectionModeString
-
"Select" | "Start" | "End"
Необязательный параметр. Режим выбора должен быть "Select", "Start" или "End". Значение по умолчанию — Select.
Возвращаемое значение
void
Комментарии
set(properties, options)
Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа.
set(properties: Interfaces.FieldUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Word.Interfaces.FieldUpdateData
Объект JavaScript со свойствами, структурированными изоморфно по свойствам объекта, для которого вызывается метод .
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект свойств пытается задать какие-либо свойства, доступные только для чтения.
Возвращаемое значение
void
set(properties)
Задает несколько свойств объекта одновременно на основе существующего загруженного объекта.
set(properties: Word.Field): void;
Параметры
- properties
- Word.Field
Возвращаемое значение
void
toJSON()
Переопределяет метод JavaScript toJSON()
, чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify()
. (JSON.stringify
в свою очередь вызывает toJSON
метод переданного ему объекта.) В то время как исходный Word.Field
объект является объектом API, toJSON
метод возвращает обычный объект JavaScript (типизированный как Word.Interfaces.FieldData
), который содержит неглубокие копии всех загруженных дочерних свойств из исходного объекта.
toJSON(): Word.Interfaces.FieldData;
Возвращаемое значение
track()
Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением для context.trackedObjects.add(thisObject). Если вы используете этот объект в вызовах .sync
и вне последовательного выполнения пакета .run и получаете ошибку InvalidObjectPath при задании свойства или вызове метода для объекта, необходимо добавить объект в отслеживаемую коллекцию объектов при первом создании объекта. Если этот объект является частью коллекции, следует также отслеживать родительскую коллекцию.
track(): Word.Field;
Возвращаемое значение
untrack()
Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращенным для context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вызов потребуется выполнить context.sync()
до того, как выпуск памяти вступит в силу.
untrack(): Word.Field;
Возвращаемое значение
updateResult()
Обновления поле.
updateResult(): void;
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-fields.yaml
// Gets and updates the first field in the selection.
await Word.run(async (context) => {
let field = context.document.getSelection().fields.getFirstOrNullObject();
field.load(["code", "result", "type", "locked"]);
await context.sync();
if (field.isNullObject) {
console.log("No field in selection.");
} else {
console.log("Before updating:", "Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result));
field.updateResult();
field.select();
await context.sync();
field.load(["code", "result"]);
await context.sync();
console.log("After updating:", "Code of first field: " + field.code, "Result of first field: " + JSON.stringify(field.result));
}
});
Office Add-ins