Вопрос

Я думаю о внедрении MVP - пассивный вид на просмотр в JavaScript.В большинстве случаев представление будет простыми элементами DOM, где ведущий прикрепленный слушатели событий.Но когда дело доходит до виджетов, таких как JavaScript на основе Pseudo Selectoxes, Auto Select или ARIA функций, должна ли это быть частью класса View JavaScript или, если логика изменить представление, являющуюся частью презентатора? Я посмотрел на javascriptmvcs view и кажется, что они имеют только шаблон генерируемым HTML безлюбая логика.Но для меня, кажется, не отличается от ведущего, который слушается HTML SelectBox, и тот, кто слушал Pseudo Selectbox с логикой JavaScript, чтобы имитировать реальное поле выбора.Оба не должны заботиться о том, как коробка работает внутри внутренне, они просто должны слушать событие изменений.

Так что тебе думать.Какая работа по просмотру класса.

Это было полезно?

Решение

Работа с видом на то, что адаптер к технологии просмотра. В этом случае ваша технология View, вероятно, jQuery через HTML через JavaScript. Вид должен быть разработан, чтобы сделать три вещи:

    .
  • знают, когда события возникают, и сообщают эти события докладчика (это может быть косвенно, используя структуру обмена сообщениями, такими как Postal.js )
  • Расскажите презедателю (когда его спрашивают) "Что такое значение x ", где x - это значение, представленное в представлении.
  • Принимайте сообщения из презентатора (обычно через вызов прямого метода), чтобы изменить значения на вид.

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

Введите описание изображения здесь

Выше стека демонстрирует, как я предвидел модель, просмотр и ведущую, а также их взаимосвязь с технологией просмотра и контроллером.

    .
  • браузер, HTML и DOM (управляемый через jQuery) - это технология «STRIENC). Они по своей природе сложны и неспособны представлять вашу модель.
  • View защищает вашу логику от технологии view . Он обеспечивает косвенное помещение, чтобы вы могли сосредоточиться на простом старом коде в вашем Presenter . Взгляд должен использовать некоторые виды обмена сообщениями, чтобы вернуться к ведущему. Это предотвращает двунаправленную зависимость между видом и ведущим. Это также позволяет нескольким докладчикам манипулировать видом.
  • strateer должен нести ответственность за понимание абстрактной природы вида и должен управлять состоянием MODES на основе его интерфейса к представлению. Он способен понять, как извлечь модель из конгрегольника, и как сохранять модель обратно на сервер.
  • Модель представляет собой представление состояния на конкретном пункте во времени . Он также может служить в качестве DTO между контроллером и stresider . В JavaScript это легко, а иногда предпочтительнее просто добавить поведение презентатора на модуль .
  • Контроллер координирует навигацию в приложении и отвечает за абстрагирование внутренних сервисов от презентации.

Другие советы

Объект просмотра должен быть ответственным за сам рисунок.Пассивный взгляд знает Как делать вещи, а не что делать.Это должно быть нести ответственность за стрельбу свои собственные события.Просто потому, что это пользовательский виджет Select Box не делает его отличным, чем регулярное поле выбора.

Если докладчик воспользовался всеми обязанностями просмотров, то вообще нет необходимости.Может также иметь только докладчик.

Виды JavascriptMVC - это фиктивные шаблоны для клиентов.Это контроллеры узлов, как правило, берут более традиционный вид роли.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top