XML
Описание
Заголовок раздела «Описание»В данной разметке представлены асинхронные методы CraftTechAPI для формирования контента XML-файла. Они возвращают классы, экземпляры которых позволяют создавать разметку для XML-файла.
class XML
Заголовок раздела «class XML»const XML = await crafttechApi.XMLClass();
Класс XML — это класс, экземпляр которого служит родительским для формирования содержимого XML-файлов.
let xml = new XML();
Конструктор класса, который используется для инициализации экземпляра.
- Принимает:
- rootTag (тип XMLTag) — необязательный параметр; корневой тег файла;
- Возвращает:
- экземпляр класса XML.
setRoot
Заголовок раздела «setRoot»xml.setRoot(rootTag);
Сеттер, который позволяет установить корневой тег файла.
- Параметры:
- root (тип XMLTag) — корневой тег файла;
- Возвращает:
- Метод ничего не возвращает.
removeRoot
Заголовок раздела «removeRoot»xml.removeRoot();
Очищает корень файла. Применяется, если необходимо очистить содержимое.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- Метод ничего не возвращает.
getRoot
Заголовок раздела «getRoot»xml.getRoot();
Используется для получения корня файла.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- Метод возвращает корень файла (экземпляр класса XMLTag).
getContent
Заголовок раздела «getContent»let content = xml.getContent();console.log(content);
Возвращает текстовое содержимое XML-файла, сформированное согласно root tag и его дочерним объектам.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- textData (string) — текстовое содержимое XML-файла.
class XMLTag
Заголовок раздела «class XMLTag»const XMLTag = await crafttechApi.XMLTagClass();
Класс XMLTag — это дочерний класс, который позволяет создавать вложенность элементов в XML-файле.
let rootTag = new XMLTag("rootTag");
Конструктор класса, который используется для инициализации экземпляра.
-
Принимает:
-
tag (string) — название тега;
-
attrs (object) — необязательный параметр; хранятся атрибуты тега по ключу и значению;
-
children (array) — необязательный параметр; массив экземпляров XMLTag, которые будут являться его дочерними элементами;
-
content — необязательный параметр; содержимое тега.
Обратите внимание, что при формировании содержимого XML-файла поле content имеет приоритет перед полем children, что означает полное игнорирование дочерних элементов в пользу содержимого тега.
-
-
Возвращает:
- экземпляр класса XMLTag.
addChild
Заголовок раздела «addChild»let xmlTag = new XMLTag("tag", { attr1: "val1" }, [], "content");rootTag.addChild(xmlTag);
Позволяет добавить дочерний элемент в тег.
- Параметры:
- child (тип XMLTag) — дочерний элемент, который нужно добавить в тег.
- Возвращает:
- Метод ничего не возвращает.
removeChild
Заголовок раздела «removeChild»rootTag.removeChild(xmlTag);
Удаляет дочерний элемент из массива дочерних элементов, если он входит в их число.
- Параметры:
- child (тип XMLTag) — дочерний элемент, который нужно удалить.
- Возвращает:
- Метод ничего не возвращает.
getChildren
Заголовок раздела «getChildren»rootTag.getChildren();
Позволяет получить все дочерние теги для конкретного экземпляра класса.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- Метод возвращает массив экземпляров класса XMLTag, которые являются дочерними элементами тега.
addAttr
Заголовок раздела «addAttr»rootTag.addAttr("attribute", "attrValue");
Добавляет атрибут для тега.
- Параметры:
- name - строковое название атрибута;
- value - значение атрибута**.**
- Возвращает:
- Метод ничего не возвращает.
deleteAttr
Заголовок раздела «deleteAttr»rootTag.deleteAttr("attribute");
Удаляет атрибут тега по его названию.
- Параметры:
- name - строковое название атрибута;
- Возвращает:
- Метод ничего не возвращает.
setAttrs
Заголовок раздела «setAttrs»let attrs = { attr1: "value1", attr2: "value2", attr3: "value3",};rootTag.setAttrs(attrs);
Заменяет атрибуты тега на переданные.
- Параметры:
- attrs (object) — объект, который хранит в себе ключ-значение атрибута.
- Возвращает:
- Метод ничего не возвращает.
setContent
Заголовок раздела «setContent»rootTag.setContent("tagContent");
Устанавливает содержимое тега.
- Параметры:
- content (string | number) — содержимое, которое хотим добавить в тег.
- Возвращает:
- Метод ничего не возвращает.
removeContent
Заголовок раздела «removeContent»rootTag.removeContent();
Удаляет содержимое тега.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- Метод ничего не возвращает.
getContent
Заголовок раздела «getContent»let content = rootTag.getContent();console.log(content);
Получает содержимое тега и его дочерних тегов в формате XML.
- Параметры:
- Метод не принимает параметры.
- Возвращает:
- Содержимое тега и его дочерних тегов в формате XML.
const XML = await crafttechApi.XMLClass();const XMLTag = await crafttechApi.XMLTagClass();let xml = new XML();let rootTag = new XMLTag("rootTag");xml.setRoot(rootTag);let tagsObject = { tag1: { attr1: "stroka", attr2: 2, attr3: "new", }, nexml: { attr1: "stroka2", attr2: 3, attr3: "new2", },};for (const [key, value] of Object.entries(tagsObject)) { let xmlTag = new XMLTag(key, value); rootTag.addChild(xmlTag); let xmlChild = new XMLTag(`${key}Child`, value); xmlTag.addChild(xmlChild); let xmlChild2 = new XMLTag(`${key}ChildAttr`, value, [], "myContent"); xmlTag.addChild(xmlChild2);}let content = xml.getContent();console.log(content);
Обратная связь: support@crafttech.ru