Полезные советы в работе с Meteor

от автора

Совсем недавно мне на глаза попался очень амбициозный проект Meteor. Меня подкупила его простота и скорость разработки приложений на нем. В этой статье будут показаны некоторые «хитрости» и полезные советы такие как: установка кастомных пакетов, добавление в проект плагинов jquery, развертывание проекта на боевом сервере и прочее.

Этот пост предназначен для тех кто уже имеет минимальный опыт в работе с Meteor.

1. Как устанавливать кастомные пакеты?

Установите Meteorite. Meteorite нужен для удобной установки пакетов. Список пакетов пока не большой и доступен по ссылке.
Вот последовательность шагов:
1. чтобы установить Meteorite, установите сперва node.js скачав с nodejs.org
2. выполняем

sudo npm install -g meteorite 

3. после этого пакеты можно будет устанавливать добавлять при помощи комманд mrt install packagename | mrt add packagename, например

mrt install jquery-ui | mrt add jquery-ui 

Синтаксис работы с Meteorite идентичен Meteor. Чтобы использовать и отлаживать свои пакеты, просто кладите их в директорию packages.

2. Как пользоваться плагинами jQuery?

Очень часто возникает ситуация, когда надо использовать какой-то плагин для jQuery, но его еще нет в пакетах.

Делается это просто:
1. скачиваем нужный плагин, распаковываем удяляем *.min.js (или же не сжатую версию), чтобы код плагина два раза не подключался
2. создаем в корне приложения папку client/lib и кладем туда плагин вместе с css

3. Как реализовать API на основе Meteor?

Если вам вдруг захотелось организовать API (например взаимодействия с мобильными устройствами), то придется использовать следующий хак:
1. создайте файл /server/api.js
2. добавьте туда следующий код

//api goes here var connect = __meteor_bootstrap__.require("connect"); __meteor_bootstrap__.app .use(connect.query()) .use(connect.bodyParser()) //I add this for file-uploading .use(function (req, res, next) {      Fiber(function() {         if(req.method == "GET"){            if(req.url.indexOf('/test') !== -1){               res.writeHead(200, {'Content-Type': 'application/json'});                res.write(JSON.stringify({"test" : "test"}));              res.end();              return;            }          }              next();   }).run(); });  

3. теперь при обращении http://localhost:3000/test будет отдаваться json

4. Как правильно деплоиться?

Деплоиться очень просто. Для эффективной работы продакшена надо установить mongodb, nodejs и я рекомендую установить supervisior для стабильной работы приложения. После этого выполняем следующие шаги:

1. редактируем файл переменные окружения sudo vim /etc/environment (в случае Ubuntu), добавляем PORT=3000 MONGO_URL=mongodb://localhost:27017/test, эти переменные хранят в себе порт на котором будет висеть проект и настройки подключения к mongodb
2. на клиенте делаем

mrt bundle project.tgz 

и заливаем его на продакшен
3. распаковываем проект на продакшене

tar zxvf project.tgz 

4. выполняем

supervisor node <путь до папки>/bundle/main.js 

и открываем приложение на 3000 порту, все должно заработать

5. Возник вопрос, но документации пока маловато?

Активно общайтесь на Stackoverflow по тегу meteor — вам как правило будут быстро отвечать и это может вам здорово сэкономить время. В моем случае вопросы решаются максимум за 12 часов.

ссылка на оригинал статьи http://habrahabr.ru/post/170009/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *