我在MeteorJS项目中使用Opal。
我正在试图找出一种方法来执行Meteor.startup
代码,但它似乎无法正常工作..
我认为这样可行:
require 'native'
@Meteor = `Meteor`
@Meteor.startup do
puts 'Go'
end
但事实并非如此。编译后的代码应如下所示:
Meteor.startup( function() {
console.log( "GO" );
} );
在JS中将函数作为参数抛出是非常规律的,我们如何在Opal中执行此操作?
答案 0 :(得分:4)
以下应该可以正常工作:
require 'native'
@Meteor = Native(`Meteor`)
@Meteor.startup -> {
puts 'Go'
}
请注意,使用Native传递lambda而不是块