我已经在Laravel 5.5中开发了一个网站,并尝试在其中实现React预设,但我想将我在Blade中使用的变量发送到React组件来进行渲染。
我安装了laracasts / utilities并遵循此处的说明https://github.com/laracasts/PHP-Vars-To-Js-Transformer将命名空间更改为reactBinding
但是它没有按预期工作。
在Laravel我做:
JavaScript::put([
'foo' => 'bar',
'age' => 29
]);
运行console.log(window)
时,我可以看到它使用相应的值创建了我创建的空间名称,但console.log(window.reactBinding)
和console.log(reactBinding)
都未定义。
知道我可能遗失的是什么吗?是否有任何额外的步骤使它在React中工作?有没有更好的方法将变量从Laravel控制器发送到React组件?
答案 0 :(得分:1)
解决了它。
我以错误的顺序包含JS代码。如逻辑所示,用于添加PHP-Vars-To-Js-Transformer
代码的视图必须放在之前 app.js
包含。
我的坏!