我在laravel框架上的javascript中访问函数时遇到问题。我有一个名为PILE.JS的文件,在该文件中,我有一个如下所示的函数:
function initPile(json) {
...
}
使用laravel-mix对其进行“编译”,并放置在我的public / js文件夹中,并包含以下内容:
<script src="{{ asset('/js/pile.js') }}" type="text/javascript" defer></script>
但是当我尝试使用像这样的文件中的函数时:
<script type="text/javascript" defer>
initPile('@json($data)');
</script>
我收到错误:ReferenceError:未定义initPile
我尝试了google这个错误,所有结果都显示了im,以便使用
将其分配给全局变量window.initPile = function(json) { ... }
然后这样称呼它
window.initPile('@json($data)');
但这只会导致相同的错误.....
答案 0 :(得分:0)
我找到了解决方案,解决方案是将其分配给窗口,但是因为我不得不推迟两个脚本标签的使用,所以函数在声明之前就被调用了。