从JavaScript发送带有网址的laravel(app()-> getLocale())

时间:2019-12-03 07:01:48

标签: javascript laravel url amcharts

我已将其他语言添加到我正在工作的网站上。

我制作了奖章:

    class SetLocale {
         public function handle($request, Closure $next)
                {
                   App()->setLocale($request->segment(1));
                   return $next($request);
                }
              }

路线:

  Route::group(
  ['prefix' => '{locale}', 
  'where' => ['locale' => 'en|fr|ar'],
  'middleware' => 'setlocale'],function ()
        {
           Route::get('mapData','HomPageController@mapData')->name('mapData');
        });

一切正常,但是:我有https://www.amcharts.com/的地图因无法确定如何通过

而停止工作
    app()->getLocale()

使用JavaScript语言编写的地图的编码

      polygonSeries.dataSource.url = "mapData";  

所以我该如何在dataSource.url中传递 $ langLocale 这样

polygonSeries.dataSource.url = "mapData",  app()->getLocale();

我做了一种使它起作用的方法,但是这种方法是静态的而不是动态的,这就是我所做的:

       polygonSeries.dataSource.url = "/en/mapData";

所以有什么办法可以弄清楚这段代码 app()-> getLocale(); 所用的语言是什么,并将其作为参数形式发送到JavaScript文件中

1 个答案:

答案 0 :(得分:0)

这是答案:将JavaScript的cod放入函数中,然后将其值从php文件发送给它

  <script>
mapJs("  {{route('mapData',app()->getLocale())}}");
</script>

在javascript文件中启动如下代码:

function mapJs(value) {
  polygonSeries.dataSource.url = value;
 }