Laravel - 获取 .js 文件中的基本路径而不是刀片模板中的基本路径

Dha*_*val 5 laravel-5 laravel-blade laravel-5.3

如果我想在刀片模板中获取基本网址,那么我使用这个:

{{ 网址 ('/') }}

如果我的脚本位于刀片模板上,那么我使用这个:

<script>
   var base_path = {{url('/')}} // same as above.  
</script>
Run Code Online (Sandbox Code Playgroud)

但是,如果我在刀片模板上添加 js 文件,那么如何获取该 js 文件的基本 url ?

让我展示一下我所尝试过的:

首先我在刀片模板中添加了脚本文件。

<script src="js/test.js"></script>
Run Code Online (Sandbox Code Playgroud)

测试.js 文件

var base_path = "{{url('/')}}"; // not working

var base_path = "<?php echo {{url('/')}} ?>"; // not working

var base_path = "<?php {{url('/')}} ?>"; // not working

alert(base_path); 
Run Code Online (Sandbox Code Playgroud)

但上面的和平代码不起作用,我无法获取基本网址。

知道如何处理这个小问题。

sha*_*fiq 6

您无法使用任何方法直接访问它

var base_path = "{{url('/')}}";

var base_path = "<?php echo {{url('/')}} ?>"; 

var base_path = "<?php {{url('/')}} ?>"; 
Run Code Online (Sandbox Code Playgroud)

您可以执行以下操作来访问它。

在页脚中放置一个隐藏输入。

<input type="hidden" value="{{url('/')}}" id="url" name="url">
Run Code Online (Sandbox Code Playgroud)

现在你可以在js中访问它,如下所示

var base_path = $("#url").val();
Run Code Online (Sandbox Code Playgroud)

或者

在初始化任何 js 之前,在标头中创建一个全局 js 变量

const base_path = '{{ url('/') }}\/';
// ex: "http://127.0.0.1:8000/"
Run Code Online (Sandbox Code Playgroud)

现在你可以在你的js中使用它