2013-04-15 2 views
1

Я пытаюсь собрать небольшое приложение с помощью метеорита и иметь много удачи. Но я не могу заставить приложение использовать плагин Twix для momentjs.Использование twix и momentjs в метеор

Используя Meteorite, я добавил библиотеку Momentjs из Atmosphere, mrt add moment, поэтому проблем нет. Но в Atmosphere нет пакета twix. Я использовал npm для установки пакета twix, но ни метеор no mrt не будет add twix, отвечающий Package named twix doesn't exist in your meteor installation, который, я думаю, имеет смысл, это пакет Nodejs, а не пакет Meteor. Наконец, я попробовал загрузить файл twix.js и поместить его в разные каталоги, но ничего не сработало.

Я не получаю ошибки с этим кодом:

if (Meteor.isServer) { 
    Meteor.startup(function() { 
     var moment = Npm.require('moment'); 
     Npm.require('twix'); 
    }); 

и я могу использовать библиотеку MomentJS, но не Twix плагин. Запись (в Meteor.isClient)

Template.dayTable.date = function() { 
    return moment(Session.get('selectedDate')).format("MMM Do YY"); 
} 

работает отлично, но писать

var t = new moment("1/25/1982 9:30 AM").twix("1/25/1982 1:30 PM"); 

имеет консоль JS сказать мне Uncaught TypeError: Object [object Object] has no method 'twix'

Есть секретное место я могу поместить файл twix.js для использования Meteor/MomentJS (что кажется вероятным)? Я не требую этого правильно? Или что?

Спасибо!

ответ

0

Метеор загружает javascript в определенном порядке. См. Meteor docs (найдите «порядок загрузки»). Чтобы это исправить:

  • добавить moment.js к клиенту/Lib, чтобы убедиться, что он загружен до того Twix
  • добавить twix.js в папку клиента

Вы также можете посмотреть в создании пакета (это то, что предназначено для Npm.require) и включить это, или переименовать файлы, так как файлы включены в алфавитном порядке. Дополнительная информация содержится в документах.

+0

Я надеялся не иметь дело со структурой каталогов, но с использованием в качестве примера "сторон, я собрал каталог и разместили файлы, как вы предложили. Работает. Благодаря! – user2216058

0

Это нигде не документированы, но вы также можете использовать Twix автономно, например:

var Twix = Npm.require('twix'); 
var t = new Twix(firstTime, secondTime); 
Смежные вопросы