0

我正在使用带有 react-rails gem 的 Rails。服务器端工作完美,但最近我在项目中添加了 react-bootstrap。

一切都很好,除了 react-server 引用了两次 react 脚本,这导致与 react-bootstrap 不一致

我来给你展示。在我的 application.js 中,我引用了以下内容:

..
//= require react
//= require react_ujs
//= require react_bootstrap
//= require utils
//= require components
..

内部组件

..
//= require react-server
//= require stuff
..

我使用 react_component 渲染组件,带有 prerender: true。它工作得很好,但是如果你使用,比如说,输入(来自 React-bootstrap)然后它会抱怨 addToRef 错误,这是由多个反应引用引起的

如果我删除 react/react_ujs 那么客户端上不再有 React。如果我删除 react-server 那么我不再对服务器做出反应。但是如果我删除 react-server 那么 React-bootstrap 不再抱怨多个引用

有没有办法将 React 服务器端与 React-bootstrap 一起使用?

4

1 回答 1

0

react-server并且react 两者都有完整的副本React!唯一的区别是react-server 包括ReactDOMServer.

我想components.js你可以有:

//= require react-server 
//= require stuff 

然后在application.js

//= require components 
//= require react_ujs

我使用类似的安排,因为我需要ReactDOMServer.renderToString在浏览器中。

于 2016-03-05T04:30:16.487 回答