2012-03-13 2 views
19

У меня есть приложение для рельсов, и я хочу заставить execjs пользователю Node.js как время выполнения javascript. Как я могу проверить, какие исполняемые файлы execjs используются?Как заставить execjs использовать Node.js?

Спасибо.

ответ

23

Я выяснил, как установить время работы javascript. В config/boot.rb я поместил следующую строку: ENV['EXECJS_RUNTIME'] = 'Node'

+4

Лучшая опция - установить оболочку env variable 'EXECJS_RUNTIME'. – Hauleth

+0

Эй @ ŁukaszNiemier, Какова ценность, которую нужно назначить EXECJS_RUNTIME? Я использовал ** "экспорт EXECJS_RUNTIME =/opt/node-v4.4.5-linux-x64/bin" **. Но теперь он показывает ошибку 'неправильное имя константы/opt/node-v4.4.5-linux-x64/bin'. – learner

+0

@learner Использовать 'export EXECJS_RUNTIME = Node' – Max

4

Если у вас все еще есть public/index.html, то он покажет вам, какой JS-двигатель используется. Если у вас его нет, то вы идете https://gist.github.com/2029491.

+10

Спасибо за это. Я не знал, что ты можешь это сделать. Я также выяснил, как установить время работы javascript. В config/boot.rb я помещаю следующую строку: 'ENV ['EXECJS_RUNTIME'] = 'Node''. – Max

+0

@Max желаю, чтобы вы положили это как ответ! – Crisfole

11

В то время как Max 's answer является абсолютно допустимым и хорошим, если вы хотите установить этот параметр в глобальном масштабе, стоит отметить, что существует более простой способ сделать это. Для распечатки текущего выполнения, после импорта ExecJS через require 'execjs', просто запустите

puts ExecJS.runtime.name 

и установить текущее время выполнения, просто используйте

ExecJS.runtime = ExecJS::Runtimes::Node 
Смежные вопросы