Ruby ExecJS语境中的玉
很简单,我在从execjs中的文件运行编译的jade.js时遇到了问题 如果我在html文件中包含jade.jsRuby ExecJS语境中的玉,ruby,pug,execjs,Ruby,Pug,Execjs,很简单,我在从execjs中的文件运行编译的jade.js时遇到了问题 如果我在html文件中包含jade.js jade.compile 返回一个函数 当我执行以下操作时: require 'execjs' source = <<-src var window = {}; #{open('jade.js').read} var jade = window.jade; src context = ExecJS.compile source context.eval
jade.compile
返回一个函数
当我执行以下操作时:
require 'execjs'
source = <<-src
var window = {};
#{open('jade.js').read}
var jade = window.jade;
src
context = ExecJS.compile source
context.eval "jade.compile"
=> nil
require'execjs'
source=当execjs返回的是一个函数时,它似乎返回nil。因此:
context.eval "jade.compile.toString()"
=> "function....."
利克维尔
context.eval "jade.compile(#{template.to_json}).toString()"
=> "function...."
及
这是有意义的,因为的extract_result方法(在撰写本文时的第62行)使用JSON.decode,它不会对函数进行解码。只是物体的导数
context.eval "jade.compile(#{template.to_json})()"
=> "some html"