Рассмотрим как работает метод getProp()
для основных типов свойств:
text
- текстовые данные - возвращает this.htmlLink.textContent;
html
- разметка - возвращает this.htmlLink.innerHtml;
inputvalue
, select
- данные форм возвращает - this.htmlLink.value;
checkbox
, radio
- чекбоксы и радио возвращает tru или false - this.htmlLink.checked;
class
- возвращает массив с классами;
render-variant
- если в свойстве отображается контейнер вызывает метод .getAllProps(), для массива вызывает метод .getAll(),
тем самым получает значения всех свойств из отображаемого элемента, если передать параметром mapObject={key1: "", key2: {ke1: ""} } getProp(mapObject)
,
вернет свойства только совпадающие по названиям с key, таким образом можно получить развернутый объект со всеми значениями свойств, либо со всеми нужными значениями свойств из отображаемого элемента;
group
- возвращает массив с объектами ключами которых будут названия свойств, а значения,
данные полученные из этих свойств на каждом контейнере, работает на основе метода getAllProps(),
если передать параметром mapObject={key1: "", key2: {ke1: ""} } .getProp(mapObject)
,
вернет свойства только совпадающие по названиям с key, таким образом можно получить развернутый объект со всеми значениями свойств либо со всеми нужными значениями свойств из дочерних контейнеров;
href
, src
, id
, style
и другие атрибуты возвращает данный атрибут this.htmlLink.getAttribute(this.type);
для событий обычно не используется, возвращает this.type;
тип data - т. к. в данных с типом дата после знака = идут какие либо данные, то для создания данного типа после
имени массива или контейнера пишется имя data_name
а далее уже какие либо данные, например: data-page-data_page_id
="какие либо данные",
здесь тип данных определяется по имени свойства оно всегда должно начинаться со слова data после названия контейнера или массива.
data
- возвращает this.htmlLink.dataset[ this.parent.name + this.propName ] то есть данные после знака "=";