2012-05-16 4 views
2

я получаю эту странную ошибку, когда я добавить маршрут «/ клиента» в Railway.js:Railway.js + Джейд падает, когда путь к «/ клиент» определяется

500 ReferenceError: jade is not defined 

Я получаю это для любого действительный маршрут в моем приложении, а не только «/ клиент». Эта линия, кажется, добавляется в верхней части моих Джейд скомпилированных шаблонов, и это то, что вызывает исключение:

var attrs = jade.attrs, escape = jade.escape, rethrow = jade.rethrow; 

Это не присутствует в скомпилированных шаблонов, если я не определить маршрут делать «/ клиент».

'/ client /: id?', '/ Clients', все остальное работает, только '/ client'.

У кого-нибудь есть ключ?

+0

Какую версию нефрита/экспресс/железную дорогу вы используете? Что делать, если переключатель для выражения ~ 2.x? – Anatoliy

+0

@Anatoliy даже сегодня у меня эта ошибка - экспресс 3.1 – vittore

+0

@ vittore вы можете воспроизводить в соединении? если да, не стесняйтесь открывать проблему (https://github.com/1602/compound/issues/new) со всей информацией, необходимой нам для воспроизведения проблемы с нуля. – Anatoliy

ответ

4

У меня была такая же ошибка, когда я работал над приложением ExpressJS с использованием нефритовых шаблонов. Я понял, что это происходит только на страницах, где я передал локальную переменную с именем client. Например.

 
res.render('admin/project_new', { 
    title: 'Edit Project', 
    message: req.flash(), 
    client: someClient 
}); 

Я думаю client зарезервированное слово при визуализации нефрита файлы (или, может быть что-то еще, я до сих пор своего рода новым для Node.js). Мне удалось исправить это, заменив его на это:

 
res.render('admin/project_new', { 
    title: 'Edit Project', 
    message: req.flash(), 
    theClient: someClient 
}); 
+0

Hah! Сейчас у меня такая же проблема. Но почему «клиент» особенный? – mpen

+0

Я был почти потерян с этим. спасибо @jangosteve – vittore

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