У меня будет несколько «продуктов» с разными «характеристиками».
Примеры
Продукты
- Камеры
- Ноутбук
Характеристики камеры
- Цифровая камера мегапикселей
- Марка
- Оптический зум
Ноутбук Sepcs
- Марка
- Размер Ram
- Операционная система
- Количество ядер процессора
- Размер дисплея
- Размер жесткого диска
У меня будет 2 компонента
- Компонент фильтра
- результаты поиска
Компонент фильтра будет списком всех доступных фильтров для этого продукта.
Результаты поиска - это результаты, которые возвращаются, когда пользователь фильтрует результаты и показывает им некоторые характеристики каждого найденного продукта.
Я использую дерево состояний Mbox и понятия не имею, как хранить «продукты», которые возвращаются с сервера, поскольку каждый продукт будет иметь разные свойства.
Я мог бы предположить, может быть, сделать модель для каждого типа
.model({
id: types.identifierNumber,
Brand: types.string,
OpticalZoom: types.string,
MegaPixels: types.string,
})
.model({
id: types.identifierNumber,
Brand: types.string,
RamSize: types.string,
Os: types.string,
Cores: types.string,
Display: types.string,
HarddriveSize: types.string,
})
но теперь я бы не знал, как получить доступ к двум разным моделям в моих компонентах, поскольку они будут привязаны к этим моделям.
Я мог бы сделать 1 огромную модель, но я не без ума от этой идеи, так как многие свойства не будут использоваться.
Еще одна вещь, которую я должен учитывать, - это то, что пользователь может затем щелкнуть один из результатов, который перейдет на другую страницу и покажет все подробности. Я бы, вероятно, использовал ссылку MST, чтобы получить к ней доступ, чего я не смог бы сделать, если бы сделал все отдельные модели.
Любые предложения, мне кажется, мне нужно больше json или чего-то более динамичного, поэтому я не уверен, является ли MST правильным решением для этого, но я не эксперт в этом, поэтому я хочу посмотреть, можно ли его использовать.