问题标签 [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.
coffeescript - gem react-rails,我的咖啡风格有什么问题?
这是我第一次尝试使用 react。而且我不明白发生了什么.. :)
一个有:
在我看来,有:
当我打开页面时,有:
但我的期望是:
这个块有什么问题?
react-rails - 将 react-rails 与具有 react 作为依赖项的包一起使用
我一直在玩,rails-react
效果很好。最近我在我的package.json
.
运行时出现以下错误npm install
:
npm WARN EPEERINVALID react-dropzone@3.2.2 requires a peer of react@^0.14.0 but none was installed.
如果我明确添加react
它安装一切就好了。
但是,当我进入浏览器时,出现以下错误:
使用react-rails (1.5.0)
和"react-dropzone": "^3.2.2"
reactjs - (Jade 或 Slim)类似 React 的语法?
我已经习惯了使用 slim 和 jam,最近我开始使用 React 在前端编写应用程序,发现现在我又在我的组件中编写了臃肿的 HTML。我目前正在使用 Ruby on Rails 和 .jsx 文件和 babel 等,使用:
但我也在使用带有 node 的 React 并使用react-starterify
样板进行表达,这与 Node 的故事相同。
有什么东西可以让我开始使用像 slim 或 Jade 这样的语法在 React 中编写我的 html 吗?
ruby-on-rails - 除了 chrome 浏览器,没有定义 React
我正在为我的 rails 4 应用程序使用react-rails 。使用反应模块的唯一方法是通过这种方法。一切都很好,没有问题。一直以来,我都在使用 chrome 版本 47.0.2526.106(64 位)。
使用任何其他浏览器,我得到React is not defined
.
奇怪的是,如果我//= require react
在application.js
其中删除了消息,但我肯定会要求 React 两次,这会产生其他问题,因为 react 是必需components.js
的React = require('react');
简而言之,我正在使用react-rails gem
and npm react
。我只需要使用npm版本的react和react-rails的格式'<%= react_component() %>
关于为什么 chrome 没有任何问题而不是其他问题(firefox,safari)的任何解决方案。我没有尝试过资源管理器。
应用程序.js:
组件.js:
错误堆栈:
包.json:
宝石文件:
javascript - '无法解析文件或目录“react”',使用 react-rails gem 和 rubymine
我正在使用react-rails
gem 和Rubymine
. 之后rails g react:install
,我的application.js
文件如下所示:
除此以外的一切都//= require react
得到认可。红宝石告诉我Cannot resolve file or directory "react".
当我查看我的 时Rails.application.config.assets.paths
,我看到了我的 react gem 路径,我可以在react_ujs.js.erb
那里找到,但没有react.js*
文件。react-rails
这是宝石 的某种错误吗?
解决这个问题的正确方法是什么?
编辑:根据有关react buildsreact-rails
的文档部分,可以通过在适当的环境文件中分配环境符号来选择正确的 react 构建。这样做仍然不能解决警告,但将文件复制到资产路径位置之一可以。似乎有些东西不太好用。Rubymine
react.js
react-rails
Rubymine
ruby-on-rails - React.js - Rails:设置状态
我有两个组件:应用程序和注册表单
该表单有两个输入:姓名和姓氏
查看 dev 中的 App 状态。我看到的工具长度:未定义和名称:“输入的名称”。我没有收到任何错误,但我缺少姓氏。
这只发生在 Rails 中。我在非 Rails 环境中尝试了相同的代码,它工作正常。我将这个 gem 用于 React:gem 'react-rails', '~> 1.5.0' 并运行 Rails 4.2.4
我要做的是根据时间戳为每个注册提供一个唯一的 ID 号。
当我控制台记录以下内容时:
我可以按照我想要的方式查看注册对象。我可以向 App 状态添加尽可能多的唯一注册,但每个注册都有 length: undefined, name: "name" ,但它缺少姓氏。
如果我将设置状态更改为:
这给了我一个包含姓名和姓氏的单一注册,但它不会添加多个注册。它只创建一个注册,每次我提交添加注册表单时都会更新。
react-router - 使用 react-router-relay 和 react-rails 进行服务器端渲染
我的服务器端是 rails,我使用 react-rails 和服务器端渲染(prerender:true)。最近开始使用带有 react-router-relay 的中继,但这样一来,服务器端渲染不再可能,因为显然获取数据涉及与涉及超时等的 graphql 服务器通信,这些在服务器渲染时不可用。所以我想肯定有办法将数据预先注入到服务器端的中继存储中,以避免调用graphql。我找到了这个库:https ://github.com/denvned/isomorphic-relay-router ,但我不能使用它,因为它与 react-rails 的使用不兼容(例如,我在任何地方都没有 app.get我的应用程序,所以没有地方可以使用那里提到的匹配功能)。关于如何使这项工作的任何想法?
html - 使用 value 属性渲染时输入字段不接收键盘事件?
我正在使用 react-rails gem 与 ReactJS for Rails 一起工作。奇怪的是,如果我在渲染 React 组件时设置了一个非空值属性,输入字段将不会收到任何键盘事件
这不行!
但它有效
有什么想法吗?非常感谢!
javascript - 如何在运行单元测试时将 React 添加为全局?
在我的 Rails 项目中,我使用了 react-rails gem,它执行以下操作:
这非常方便,但是当我使用 Jest 运行单元测试时,全局不存在,并且我从包含我正在测试的组件的文件中收到一个错误,说 React 没有定义。
如果我使用在组件文件中定义 React
然后由于加载 React 两次而导致错误。
我应该如何在我的单元测试中定义一个全局React
变量以便它们工作?
ruby-on-rails - 使用 Coffeescript 制作 React-rails 动画
我一直在寻找在使用 Coffeescript 的 RoR 应用程序中使用 ReactJS 动画的解决方案。
我试过这个(assets/javascript/components/sidebar/teams_form.js.jsx.coffee):
在 Chrome 的开发人员工具(React 选项卡)中,我看到以下内容: Chrome 开发工具截图
这是我的 SASS 代码(assets/stylesheets/partials/_sidebar.sass):
生成的代码不会为任何内容设置动画。它做了一个没有背景颜色的简单渲染。多年来我一直在寻找解决方案!
(TeamForm 在单击创建元素并按 ID 将其添加到给定 div 的链接后呈现)
如果有人可以帮助我,那就太好了!
非常感谢。
编辑:我设法通过简单地使用 jQuery 添加/删除类 onClick 来解决这个问题。但是,这似乎不是正确的解决方案。不过,我仍然很想知道这些动画是如何工作的。