我有一张highcharts饼图,我想要放置laravel' route()
辅助函数。
我有以下代码,其中
data: [{
name: 'Car',
y: 56.33,
sliced: true,
selected: true,
url: {{route('dashboard')}}
}]
引发SyntaxError: expected property name, got '{'
。
将PHP
变量传递给JS
的最佳方式是什么?
答案 0 :(得分:4)
data: [{
name: 'Car',
y: 56.33,
sliced: true,
selected: true,
url: "{{route('dashboard')}}" // note: surround with double quote
}]
答案 1 :(得分:0)
您应该打开脚本标记(Blade模板的顶部或末尾)并将数据传递给JS脚本。
我通常使用@stack
。你的代码应该是这样的:
master.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
<title>@yield('title')</title>
</head>
<body>
Blah Blah Blah
<!-- Start Content -->
@yield('content')
<!-- End Content -->
<!-- Custom Scripts -->
@stack('scripts')
</body>
</html>
chart.blade.php
@extends('master')
@section('content')
Your Page Content
@endsection
@push('scripts')
<script>
var pie = {
data: [{
name: 'Car',
y: 56.33,
sliced: true,
selected: true,
url: "{{route('dashboard')}}"
}]
};
</script>
@endpush
通过这种方式,您的数据将被Laravel辅助函数替换。