目标是我想将所有传递的数据从控制器传递到一个全局JavaScript变量中的视图,这是一个例子:
在控制器中
index(){
return veiw('path.to.view', ['data1' => $data1, 'data2' => $data2]);
}
在视图中
<script>
var _backendData = {!! $allData !!}
//$allData should contain ALL the passed data from the controller
</script>
我将来自控制器的所有收到的数据存储在$ allData
中答案 0 :(得分:2)
要访问所有数据,请将其作为根数组的一项传递。因为这些键成为视图变量。
return view('path.to.view', [
'allData' => ['data1' => $data1, 'data2' => $data2]
]);
查看:
<script>
var _backendData = {!! $allData !!}
</script>
但是这不能正常工作。您应该使用JSON将数据传递给JavaScript:
var _backendData = JSON.parse("{!! json_encode($allData) !!}");
答案 1 :(得分:0)
将其设置在控制器上 -
return veiw('path.to.view', ['allData' => ['data1' => $data1, 'data2' => $data2]]);
答案 2 :(得分:0)
当您返回数据数组时,您可以逐个访问元素,如下所示。你不能只将PHP数组分配为JavaScript数组。
return view('path.to.view', [
'allData' => ['data1' => $data1, 'data2' => $data2]
]);
查看:
<script>
var _backendData = {!! $allData['data1'] !!}
</script>