首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpalRB:使用函数作为参数

OpalRB:使用函数作为参数
EN

Stack Overflow用户
提问于 2014-06-08 17:15:41
回答 2查看 160关注 0票数 3

我在我的MeteorJS项目中使用Opal。

我正在想办法做Meteor.startup代码,但它似乎不起作用..

我以为这会成功的:

代码语言:javascript
复制
require 'native'

@Meteor = `Meteor`
@Meteor.startup do
  puts 'Go'
end

但事实并非如此。编译后的代码应该如下所示:

代码语言:javascript
复制
Meteor.startup( function() {
  console.log( "GO" );
} );

在JS中将函数作为参数抛出是非常正常的,我们如何在Opal中这样做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-09 09:40:00

以下内容应能很好地运作:

代码语言:javascript
复制
require 'native'

@Meteor = Native(`Meteor`)
@Meteor.startup -> {
  puts 'Go'
}

注意,使用本机时,您传递的是lambda而不是块

票数 4
EN

Stack Overflow用户

发布于 2021-12-31 20:21:46

您可以按照Elia的建议使用本机(在包装JS对象的下面),或者.

代码语言:javascript
复制
@Meteor = `Meteor`
@Meteor.JS.startup do
  puts 'Go'
end

X.JS.y这样的调用直接编译到X.y()。类似地,您可以访问像X.JS[:propname]这样的属性(编译为X.propname)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24108690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档