问题标签 [opal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
54 浏览

ruby-on-rails - 如何告诉 Rails 不要预渲染组件?

使用 React.rb 时,如何防止 Rails 预渲染组件?

0 投票
1 回答
219 浏览

ruby-on-rails - 如何将基于 JavaScript 或 JSX 的组件导入 React.rb 以便在 ruby​​ 中访问?

使用为 React-Bootstrap 和 react.rb 给出的示例完美地工作,但我试图让一个名为 React-TimeAgo 的 NPN 组件工作,我迷路了。

这就是我所做的:

在 index.js 中(让 Webpack 将其导入到 webpack 包中):

在实际的 component.rb 我有这个:

然后引用 Bootstrap 组件可以完美地工作:

但我无法从 TimeAgo 包装器中得到任何东西:

我究竟做错了什么?所有帮助表示赞赏!

0 投票
1 回答
136 浏览

javascript - 是否可以通过 NPM 和 Webpack 安装 Reactrb 和 Opal?

是否可以拥有 NPM/Webpack 包 Opal 和 Reactrb?我只想像这样安装 Reactrb:

NPM install Opal --save

NPM install Reactrb --save

然后require根据需要。

然后 ```webpack` 将 Reactrb 和 Opal corelib/stdlib 文件打包成少量的 JS 文件(而不是他们今天进来的近 200 个文件)

就我而言,我使用的是 Rails,因此 Sprockets 正在将 Ruby 编译为 JS,并且与 opal-rails Gem 一起工作得很好。我试图过去的是,这种方法会导致每次页面刷新(在开发期间)时下载超过 200 个文件。当我预编译资产时,Sprockets 当然会将所有这些编译到一个 JS 文件中,但我正在寻找一种通过 Webpack 实现这一点的方法,这样我就可以使用更少的 Opal 和 Reactrb JS 文件进行开发,并且只下载我自己的组件。页面刷新。

很高兴看到社区认证的方法。

谢谢!

0 投票
0 回答
134 浏览

assets - Rails 5 中的 opal-rails 不会向资产添加指纹?

我已经预编译了我的资产

并将我的 rails 应用程序运行为:

但我的应用程序不要求

  • 应用程序-{指纹}.css
  • 应用程序-{指纹}.js

相反,它要求没有指纹。

我能错过什么?或者这是一个 Rails5 错误。我对 Rails4 没有任何问题。

更新:

我发现问题是由蛋白石导轨引起的。当我使用以下命令创建我的应用程序时

从生产开始不会为带有 opal-rails 的资产添加指纹。

它适用于 jquery-rails。

0 投票
1 回答
59 浏览

opal - OPAL-如何配置项目的属性

当我运行分析时(例如 OPAL 源代码中的 CHADemo),我总是收到警告

在前一个问题中,它建议在 /src/main/resources/reference.conf 下的 Common 项目中的配置文件。所以我尝试在文件中添加后续行,但仍然收到相同的警告。

此外,当我在我的项目中将 OPAL 作为库导入并尝试在我的项目的“/src/main/resources/”中创建 reference.conf 时。我遇到了同样的问题。

0 投票
0 回答
74 浏览

javascript - opal builder, ruby​​ to javascript 产生未定义的方法“to_a”和缺少“;”

我最近第一次尝试使用 Opal builder 将 Ruby 代码编译为 javascript,遵循本教程: https ://github.com/opal/opal

然而,即使是像将数字转换为数组或用 nil 检查不等式这样的基本操作也会产生错误。

我希望这只是一个新手问题,并且有一个非常简单的答案。但是,我似乎无法找到当前 Opal 版本的这些特定问题或更全面的教程示例(例如,Builder 的一些细节似乎随着时间而改变)。

我正在使用 Ruby 2.4.0 和 Opal 0.10.5。我使用 Firefox 52 运行嵌入了生成的 js 代码的 html 文件。

以下片段...

...在 Firefox 控制台中产生以下错误

rakefile 是

最后,包装js代码的html文件

任何帮助当然都非常感谢。

0 投票
1 回答
66 浏览

javascript - 如何将 ruby​​ - Rspec 转换为 js 测试 - opal gem

在我的 Ruby on Rails 应用程序中,我使用opal gem将 ruby​​ 代码转换为 JS。如何将 Rspec 测试也转换为 JS 测试 - 蛋白石。以及如何运行那些 JS/opal 测试?

感谢

0 投票
1 回答
81 浏览

ruby-on-rails - 如何在 Rails 中提供 erb 文件作为蛋白石模板?

我有一个运行蛋白石(0.11.1)的rails应用程序(rails 5.2)。

我想在客户网站上使用 erb 模板。我按照官方 opal-docs ( http://opalrb.com/docs/guides/v0.11.1/templates.html ) 中描述的步骤进行操作,但要求 opalrb-file 失败。sprocket 声称找不到该文件:

文件views/user.opalerb 存在。

sprockets 似乎无法处理/识别 opalerb 文件,尽管我没有发现必须配置的提示。

如何使用 sprockets 制作蛋白石并找到并编译此文件?

0 投票
1 回答
56 浏览

javascript - 如何在 hyperstack 中上传文件?

基本上是标题。文档说要使用操作代替传统的 API,但我似乎找不到处理文件上传的方法。

这在超堆栈中甚至可能吗?