问题标签 [react-rails]

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 回答
718 浏览

javascript - ExecJS::RuntimeError Rails 4 使用 react-rails gem

启动本地服务器时出现错误rails s

错误信息:

编译 ((execjs):6633:19): SyntaxError: [stdin]:5:10: unexpected . (ExecJS::RuntimeError)

我的第6application.html.erb突出显示:

<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>

宝石文件

我正在使用 react-rails gem 来渲染我的@records对象。

app/assets/javascripts/components/records.js.coffee

有人知道我为什么会收到此错误消息吗?

0 投票
1 回答
417 浏览

ruby-on-rails - 使用 React-rails 和 Algolia 进行服务器端渲染

我正在尝试预渲染我的反应应用程序服务器端,但我遇到了一个问题:一旦require('algoliasearch')我得到ReferenceError: XMLHttpRequest is not defined

我尝试使用faux-jax来模拟XMLHttpRequest​​,但后来我得到TypeError: Cannot read property '0' of undefined了,毕竟我认为这不是要走的路。

对这个问题有任何想法吗?

0 投票
2 回答
1576 浏览

javascript - React Rails 组件:手动触发重新渲染

在 Rails 中,我在一个页面上有一组 Bootstrap 选项卡,每个选项卡上都有一个 React 组件,即:

组件:

  • 不要互相交谈
  • 更新 RESTful 后端

现在:

  • PeopleWidget可以在后端更新一个人的权限
  • 这应该更改ContentWidget为只读行为

我的战术解决方案是:

  • 在显示 Bootstrap 事件时tab-2,我想手动触发ContentWidget渲染。
  • 这将启动从后端加载更新的详细信息
  • ContentWidget将有适当的更新行为

这感觉像是一种解决方法,但我有一个时间表:)

我不知道如何手动触发ContentWidget重新渲染。这可能吗?

0 投票
1 回答
594 浏览

ruby-on-rails - 如何在 React-Rails 中向表单添加操作?

我正在用 react-rails 构建一个应用程序。我正在尝试通过向控制器添加自定义操作来将多个表单添加到单个页面。

在过去使用纯导轨时,我可以这样做:

这就是我呈现表单的方式:

0 投票
1 回答
2635 浏览

ruby-on-rails-4 - 向rails添加样式反应组件包装div

react_component在我的 Rails 项目中使用。这会为组件插入一个包装 div react.js,例如

我真正需要的是在这个包装 div 中插入样式信息,以便组件正确对齐,如下所示:

这样做的适当方法是什么?

0 投票
1 回答
340 浏览

ruby-on-rails - 出于某种原因将组件渲染为字符串

出于某种原因,我的部分 React 组件正在渲染为字符串。

我将 Rails 与gem 一起使用react-rails,而sprockets-coffee-reactgem 将 JSX 与 Coffeescript 一起使用。

这是代码

显示.html.erb

article_form.js.coffee.cjsx

authentity_token_input.js.coffee.cjsx

和输出:

<input name="utf8" type="hidden" value="✓"> <input name="authenticity_token" type="hidden" value=zlZevmHku5ZU+UA998KwmJHAMn94uVkilrBj1iC/A8o=>

由于某种原因,它将两个输入呈现为纯文本而不是实际的 html 标签。

当我检查元素时,这就是我得到的:

0 投票
1 回答
492 浏览

javascript - React-Rails:如何使用 ref 渲染组件?

目前,我将组件呈现在 .erb 文件中,如下所示:

该组件具有使用以下功能的功能promised-xhr

this.setState({number: response.body.number)}不起作用,因为this不再是组件。我打算用它React.findDOMNode(this.refs.myComponent)来查找我的组件并触发新状态。

但是,我不知道如何使用react_componentref 将 ref 分配给我的 Counter 组件。

0 投票
1 回答
3663 浏览

javascript - React 组件正在渲染,然后消失

如果这个问题难以理解,请提前抱歉 - 不太确定如何提问。

基本上,我的 rails 视图中有两个 React 组件,它们采用“metric”和“id”的属性。

在 Chart 组件中,它获取指标并调用服务器以获取适当的数据。虽然组件按应有的方式工作,但问题是它会绘制第一个图,但是当它绘制第二个图时,第一个图消失了。

这是 Chart.js.jsx 组件:https ://gist.github.com/coffeejay/ea5cf8e8c3dcd09e58f6

编辑

Chart 组件内部还有另一个名为 FlotBar(基于 Flotchart)的组件。代码:https ://gist.github.com/coffeejay/1872d3d8bd1ddcb3c228

谢谢您的帮助!

0 投票
1 回答
3357 浏览

javascript - React on Rails 集成

我希望使用gem react-rails将 ReactJS 实现为我的 Rails 应用程序的视图。到目前为止,我只使用该标准.erb在我的 RoR 应用程序中呈现我的视图,并且我想知道一些关于如何使用 React 来实现它的问题。

例如,当您想为 RoR 中的模型创建表单时,您“只是”使用以下命令创建表单:

这会自动使用正确的路由,生成 CSRF 令牌,使用正确的 CSS id&class等等......

现在,如果我使用 React,我必须处理所有这些吗?并在 JSX 中以老式的方式在渲染中创建表单?

没有像 Ruby for React 这样的“自动生成功能”吗?

我在网上找到了一些关于 React & Rails ( 1 , 2 , 3 ) 教程的资源,但大多数时候他们说的是不同的东西。一些使用 JSX,一些咖啡,而官方 React 网站推荐使用 JSX。有人用refs,有人用,states一切都是这样!

是否有一个很棒的教程可以用作使用 React 构建我的应用程序基础的参考?

0 投票
1 回答
354 浏览

ruby-on-rails - react-rails gem 不适用于 to_json

每当我尝试在 react_component 帮助器上将其他选项传递给 to_json 时,它都会被解析为 react 属性的纯字符串。

结果是

gem的文档说:

props 要么是一个响应#to_json 的对象,要么是一个已经字符串化的 JSON 对象(例如,用 Jbuilder 制作,参见下面的注释)。

这没有多大帮助。

Jbuilder 示例也没有帮助,因为我使用的是 to_json。

谢谢你的帮助。