Php Laravel javascript位置应在视图中或公共位置

Php Laravel javascript位置应在视图中或公共位置,php,jquery,laravel,document-root,Php,Jquery,Laravel,Document Root,我有一个javascript,它需要PHP提供的根目录路径来调用JSON文件 我不确定这段代码应该在public/js中还是在template.blade.php中 如果它在public/js中,那么我必须指定如下所示的绝对路径,因此每次我想要更改目录名或域时,我也必须更改路径 url:“/myBookStore/public/api/book type/” 只需创建一个 <meta name="base_url" content="{{ URL::to('/') }}"> jav

我有一个javascript,它需要PHP提供的根目录路径来调用JSON文件

我不确定这段代码应该在public/js中还是在template.blade.php

如果它在public/js中,那么我必须指定如下所示的绝对路径,因此每次我想要更改目录名或域时,我也必须更改路径

url:“/myBookStore/public/api/book type/”

只需创建一个

<meta name="base_url" content="{{ URL::to('/') }}">
javascript:

var url = document.getElementsByName('base_url')[0].getAttribute('content')

通过这种方式,您可以将javascript放在公共js文件夹中,并始终获得正确的url

这似乎是个好主意!您是否建议js文件应始终位于公用文件夹中?你认为哪种方法是最好的?我在public/js中缩小了它们,这对我很好,我尽量避免在我的js中混合使用php。非常感谢,这救了我的命。它是如此简单,但非常有用!!要对您的部分问题进行评论,我的Javascript文件通常位于
public/assets
文件夹中,因此您可以通过
URL::asset('assets/file.js')
<meta name="base_url" content="{{ URL::to('/') }}">
var url = $('meta[name="base_url"]').attr('content');
var url = document.getElementsByName('base_url')[0].getAttribute('content')