@sanex3339

Как лучше всего организовать хранение настроек и параметров, общих для нескольких компонентов?

Пишу под TypeScript.
Как лучше всего хранить настройки, общие для нескольких компонентов?
Если точнее, то пока компонентов 5, потом, возможно, их будет больше.

Большинство настроек только read-only, однако есть и перезаписываемые.

На данный момент настройки вынесены в отдельный компонент-класс Settings, настройки сгруппированы по смыслу в объекты и являются приватными свойствами этого класса, доступ через метод getSetting(settingName). Таких свойств в итоге получается в районе 10-15.
Каждая из настроек может использоваться в нескольких компонентах.

В компоненте, где эти настройки (класс Settings) используются, они передаются аргументом конструктора, как зависимость (ioc), и назначаются аналогичным по имени настройки свойствам этого класса. Ну и затем уже обращаемся к настройкам через this.

constructor (settings) {
    this._settingNameA = settings.getSetting('settingNameA');
    this._settingNameB = settings.getSetting('settingNameB');
}


Соответственно, что мне не нравится: выделение под настройки свойств класса-компонента, где эти настройки используются. Если этого не делать, а выделить под настройки только 1 свойство - settings (this._settings), то придется в куче мест писать что то типа
let value = this._settings.getSetting('settingNameC').blablabla + this._settings.getSetting('settingNameD');


В общем, как правильнее это сделать?
  • Вопрос задан
  • 130 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы