• Как управлять шириной flex-контейнера при переносе элементов?

    SeaInside
    @SeaInside
    15 лет пилю все эти штуки
    Задачка интересная, вообще, как говорится, "со звёздочкой".
    Пользователи IE и Edge в пролёте, ибо без fit-content задача не решается (имеется в виду решение на чистом CSS).
    Как решить "для всех" без применения JS - не вижу, что чаще всего означает "никак" :)

    Ответ написан
    1 комментарий
  • Как организовать MVC на клиенте?

    PiCoderman
    @PiCoderman
    Не стоит пытаться применять MVC на сервер, так как в первую очередь это паттерн для тех приложений, в которых непосредственно есть пользовательский интерфефс. По крайней мере так написано на википедии, и я полностью с этим согласен.

    Если вы уже решили, что у вас будет SPA(Single Page Application), то скорее всего(в большинстве случаев) и M, и V, и C будут у вас в SPA.

    Например:
    M - это данные бизнес логики вашего приложения(Инфа о пользователе, товарах, постах, контенте), иными словами - все те данные, которые имеют значение не для текущего клиента, а для всего продукта в целом. Такие вещи обычно суют в Redux, MobX или аналоги. Также существуют данные, необходимые для конкретного клиента, например информация о том, открыто ли боковое меню приложения. Такие данные нужно хранить отдельно от основной модели. Например в стейте React компонентов.
    V - это представление(view) вашего пользовательского интерфеса. V - это просто штука, которая рисует интерфес на основе M. Как правило это обычно React, Vue (частично Angular).
    С - Это логика взаимодействия с приложением через пользовательский интерфес. Для React это например может быть реализовано с помощью Thunk, Saga, но может выходить и за их пределы. C в процессе обработки пользовательских действий может обновлять M, выполняя запросы к API сервера.

    И сам сервер, и его API не имеют отношения к MVC клиента. Да и вообще в принципе(ссылаясь на википедию) не должны иметь отношения к MVC.

    Архитектура серверной части и все что там происходит - это уже отдельная задача, и судя по вашему вопросу даже не ваша.

    Я так осторожно ссылаюсь на википедию, потому что существуют например PHP фреймворки, которые также используют терминологию MVC. Но тут нужно понимать, что там это немного другое, так как при использовании PHP фреймвороков, часто интерфейс генерируется прямо на сервере. И соответственно они и называют некоторые вещи V и используют "MVC" "на сервере".
    Ответ написан
    Комментировать
  • Как организовать MVC на клиенте?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Предлагаю вспомнить, как выглядит MVC-схема:
    240px-MVC-Process.png
    Модель (model) - это объект(ы), куда попали данные после парсинга ответа от серверного API.
    Контроллер (controller) - это логика взаимодействия объектов (логические связи, механика).
    Представление (view) - это непосредственный вывод на экран (рендеринг/отображение).
    Ответ написан
    Комментировать
  • Как организовать MVC на клиенте?

    @dimoff66
    Кратко о себе: Я есть
    Все примерно так, контроллером в данном случае является сервер
    Можно конечно назвать единицу данных, получаемых с сервера моделью, но если вы ничего с ней не делаете, а лишь держите в состоянии и выводите во вьюшщку, то назвать ее можно хоть соленым огурцом.

    Другое дело, что если на клиенте с ней сотворяется CRUD и при сотворении CRUD-а применяется какая-то логика, то да, появляются модель и контроллер. (например список работников, который выводится, создается новый работник и редактируются существующие)
    Ответ написан
    Комментировать