我有一个基于Erik Rasmussen的入门套件的React应用程序来自here .
该应用程序运行良好,使用React Router和Redux .
由于我的Rails应用程序很老,嵌入应用程序的想法是有一个单独的控制器,其中 index
动作呈现iFrame,iFrame本身从相同的控制器 show
动作加载它的内容 .
因此,我可以坚持使用我的Rails应用程序的布局,并且无需任何更改即可呈现React应用程序标记 .
在我通过应用程序编译后
$> npm run build
我将main- .js and main- .css文件复制到Rails应用程序中,因此可以从那里发送它们 .
之后我通过以下方式启动React应用程序:
$> npm run start
并通过curl请求起始页面 . 卷曲输出进入我的 show
erb模板 . 在里面我改变了加载主JS和CSS的URL .
当我现在请求我的 index
页面时,iFrame会加载它的内容,应用程序似乎初始化,但根本不起作用 . 我看到渲染的内容,但点击链接会导致Rails路由错误 . 所以点击似乎不被React截获 .
我试图跟踪执行情况,最后调试 client.js
中的代码 . 看起来, ReactDOM.render
接收到正确的参数,这意味着,有一个适当的外观组件,一个商店,甚至目标元素 .
目前我在控制台中收到以下错误:
Uncaught ReferenceError: _classCallCheck is not defined
我正在使用一个稍微有点的版本的starterkit,它将初始数据嵌入到标记中,但我无法弄清楚,为什么_classCallCheck在React应用程序中工作,但在嵌入到Rails中时停止工作 .
即使是最新版本的starterkit也不起作用 . 在这种情况下,我根本没有任何错误,但具有相同的行为 .
由于旧的Rails版本,我不能使用React Gem,我需要一些开箱即用的初学者提供的功能,所以改变这个,也是没有选择 .
任何提示?