jesustown
@jesustown

Как сделать в meteor js mvc структуру?

Только начал разбираться с Meteor Js. Посоветуйте как организовать mvc структуру?
  • Вопрос задан
  • 3498 просмотров
Пригласить эксперта
Ответы на вопрос 1
Я не смогу посоветовать как реализовать классический MVC, но могу рекомендовать воспользоваться примерами готовых приложений для организации собственной структуры.
Например учебное приложение Microscope https://github.com/DiscoverMeteor/Microscope
, а так же Telescope https://github.com/SachaG/Telescope
+ посмотреть примеры реализации пакетов на atmosphere.meteor.com

У меня лично сложилась такая структура:
1) Все приложение я разделяю на множество пакетов.
Каждый пакет представляет из себя, либо
а) Пакет-библиотека.
Какое-либо функционал, самодостаточный и предназначенный для многократного использования в различных приложениях.
Пример - большая часть пакетов с atmosphere.meteor.com
б) пакет-модуль.
Весь функционал я делю на модулю.
Например: блог, личный кабинет, профиль, админка и тд и тп.
Все они зависимы от одного базового модуля "core" и используют или наследует часть его функционала.
в) основное приложение.
Оно является своеобразным клеем для пакетов.
Подключает необходимые, конфигурирует их и тд.

Если рассматривать приложение с точки зрения mvc, то из моей структуры, необходимо рассказать подробнее о "пакет-модуль".
Такой пакет включает в себя, все что необходимо для его работы: маршруты, коллекции, библиотеки, шаблоны, хелперы и тд.
Пакет сам по себе практически самодостаточен и может лишь тянуть некоторые зависимости из других пакетов.
Таким образом использовать такой пакет можно в разных приложениях без каких либо особых настроек и тд.

Базовая структура пакета-модуля:
module
|
- router (Controller)
|- contollers
|_ subscribers
|- filters
|- hooks

_ libs (Model)
|-collections
|-methods
|- helpers
|-libs
|- publications

_ views
|- templates
|-helpers
|-events
|- etc

При необходимости, могу рассказать подробнее о любом из слоев.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы