getState
возвращает объект реактивного состояния File Manager
object getState();
Example
// возвращает текущее состояние File manager
const state = $$("fm").getState();
// переключает виджет в режим "cards"
state.mode = "cards";
Related samples
Details
Возвращаемый объект хранит следующие свойства и методы:
{
clipboard: null,
mode: "grid",
path: "/",
search: "",
selectedItem: []
}
Свойства
- mode (string) - режим отображения текущей вкладки ("list" (по умолчанию), "cards" and "double")
- path (string) - путь к текущей/первоначальной директории
- selectedItem (array) - хранит массив выбранных элементов
- search (string) - хранит значение (текст) из поисковой строки
- clipboard (object) - хранит данные буфера обмена:
{ files: [{date: dateValue, id: "/Data.xlsx", size: 55215, type: "document", value: "Data.xlsx"}], mode: "copy"}
.
Методы
- $observe (function) - отслеживает изменения в текущем состоянии File Manager. Принимает два параметра:
- prop (string) - реактивное свойство, которое изменяется
- handler (function) - функция для выполнения, когда изменения произошли. Принимает только один аргумент:
- value (any) - текущее значение реактивного свойства. Тип значения (строка, массив, и т.д.) зависит от реактивного свойства.
- batch (function)- позволяет изменять несколько свойств сразу. Принимает один параметр:
- props (object) - объект, который содержит пары "имя свойства: значение".
Например, отслеживать выделенные элементы можно следующим образом:
state.$observe("selectedItem", v =>
$$("files").setValue(v.map(a => a.id).join(", "))
);
Или изменить несколько свойств с помощью batch:
// переключает виджет в режим"cards" и очищает поле поиска
state.$batch({
mode:"cards", search:""
});
Наверх