Выбор модели маршрутизации и хранение данных маршрута

Пытаюсь делать что-то вроде комплексной системы автоматизации деятельности. В программе предполагается много модулей. Планирую организовать по принципу окон windows. При необходимости можно открыть новый модуль, затем можно либо закрыть его, либо открыть новый, не закрывая его, чтобы потом вернуться.

Например. Открываю модуль списка доступных цифровых документов. Выбираю нужный, кликаю на редактировать, запускается форма редактирования. Открываю какой-нибудь справочник, смотрю нужные сведения, возвращаюсь к форме. Это всё осуществляется путем клика на аналоге панели запущенных задач.

Продумываю архитектуру. Модули загружаем через vue-router. Можно хранить данные неактивных модулей с помощью keep-alive, но там ограничены возможности управления. Можно только указать сколько кэшей нужно хранить, но нет возможности очистить определенные, а также будут храниться все данные. Мне же хотелось иметь возможность выбора, какую часть данных нужно хранить, а какие данные не нужны, так как они устаревают. Это я беспокоюсь, что бы большое приложение не тормозило и не подвисало на маломощных компьютерах. С одной стороны простота реализации, с другой более эффективное расходование ресурсов.

Кроме выбора keep-alive или хранение данных состояния в отдельных структурах можно придумать еще другие варианты. Например, открытие модулей в отдельных вкладках, тогда управление данными переносится на браузер. Либо же можно реализовать вариант открытия модулей в динамически добавляющемся массиве компонентов «component», временно неиспользуемые скрывать с помощью директивы v-show. Можно загружать модули в диалоговые окна. Можно придумать еще другие варианты. Выбрав один из них, придется нести груз соответствующих ему недостатков.

Написать тестовые версии каждого варианта и потом провести оценочные испытания - слишком трудоемкая задача. Поэтому надеюсь на ваши советы.


Ответы (0 шт):