2015-08-19 1 views
0

Согласно Meteor Doc, публичный fodler доступен как для сервера, так и для клиента. Но, если мне просто нужно использовать элементы заголовка HTML для доступа к нему, как я могу это сделать с сервера?Meteor: доступ к моей публике/lib с сервера

Я создал lib с очень специфическими функциями, и мне надоело копировать их в верхней части каждого из моего .js-файла сервера.

Может ли кто-нибудь дать мне подсказку? Я не мог найти на гугле:/

Спасибо вам,

David

+0

Есть ли причина, по которой вы не используете папку 'lib/shared', а не' public'? 'public' обычно зарезервирован для различных активов, в то время как' lib/shared' может иметь библиотеки, совместно используемые между клиентом и сервером. – Curtis

+0

О, ладно, я этого не знал. Должен ли я объявлять некоторые строки на стороне сервера кода, чтобы получить к нему доступ? –

ответ

1

Вы делаете свою жизнь труднее, чем это необходимо. Любая папка, которая не называется client, server, private, или public является общей информацией клиента и сервера. Просто поместите свои общие файлы .js в любую папку, скажем, /common, и они будут доступны (загружены) как на клиенте, так и на сервере.

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

+0

Мне понравилось, что вы сказали: я положил свою библиотеку в общую папку. Но теперь, независимо от того, что я называю свои функции от клиента или сервера, я всегда получаю выход с кодом 8, поскольку метеор уже не может найти мою функцию. :/ –

+0

- это функция, определяемая как 'functionname = functio (args) {..}' или как 'function functionname (arg) {..}'. Вам нужно использовать первое. Если вы это сделаете, он будет загружен и доступен везде. С последним она видна только в самом файле. –

+0

Я использую его так: function getLangLevelColor (lvl) {...} Наденьте его /common/lib.js, затем на /lib.js, никто не работает, я получаю ту же ошибку:/ –

Смежные вопросы