You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 9 Vite无法加载文件内函数,打包后文件为空

Laravel 9 + Vite 无法加载JS函数问题解决

问题根源

Vite默认采用ES模块机制,模块内部定义的函数如果没被引用或挂载到全局,会被**Tree Shaking(树摇)**优化删除,导致npm run build后生成的JS文件为空;而代码写在函数外部时,顶层代码会被直接执行,不会被树摇清理,所以显示正常。同时,模块内的函数默认不会暴露到全局window对象,Blade模板里直接调用也找不到。

解决方法

把函数挂载到全局window对象上,既避免被树摇删除,又能在模板中正常调用:

修改resources/js/dashboard/globaldash.js代码:

window.convertToLowerCase = function() {
    const input = document.getElementById('username');
    input.value = input.value.toLowerCase();
}

验证步骤

  1. 执行npm run build重新构建资源
  2. 检查public/build目录下对应的JS文件,确认函数代码已存在
  3. 刷新页面测试函数调用,此时即可正常执行

内容的提问来源于stack exchange,提问作者Yunier Garcia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 20:33:12