我正在尝试打开一个项目,但该项目要求我包含库.js文件的路径。库文件位于Laravel的公共目录中。需要该路径的文件是一个javascript文件,我无法像在Laravel中的html文件中那样使用{{ asset() }}
进行调用。
我的意思是,通常在html中我使用:
<script src="{{ asset('js/ui-screenfull.js') }}"></script>
我的问题是,如何在javascript中链接到Laravel的公共目录中的库?
库js文件和需要的js文件都在公共文件夹中,所以作为一种方式,我试着给它正常的路径,如:
(这是需要javascript文件的代码段):
uiLoad.load('../libs/screenfull/dist/screenfull.min.js');
但这不起作用。使用它认为需要获取链接内容:http://example.app/libs/screenfull/dist/screenfull.min.js
而不是public/js/libs/screenfull/~
我需要获取公共目录或在路径之间移动。
完整档案:
(function ($) {
"use strict";
uiLoad.load('../libs/screenfull/dist/screenfull.min.js');
$(document).on('click', '[ui-fullscreen]', function (e) {
e.preventDefault();
if (screenfull.enabled) {
screenfull.toggle();
}
});
})(jQuery);
目录列表:
public
- scripts
- requiring.js
- libs
- screenfull / dist / screenfull.min.js
答案 0 :(得分:1)
有很多方法可以做到这一点。
一个是 - 您可以在<head>
:
<meta name="asset_url" content="{{ asset('/') }}"/>
然后将url分配给变量:
var asset_url = $('meta[name=asset_url]').attr('content');
然后您可以使用asset_url
变量来引用公共路径:
uiLoad.load(asset_url + 'libs/screenfull/dist/screenfull.min.js');