在Laravel中使用Vite加载js库

deyfvvtc  于 2023-05-19  发布在  其他
关注(0)|答案(1)|浏览(315)

我一定是犯了什么低级错误,但我不知道是什么。
我试图将js库和图像加载到我的刀片视图中,但我只得到错误(在生产环境中,开发工作正常)

无法在Vite清单中找到文件:resources/libraries/modernizr/modernizr-webp.js.

我的vite.config.js文件看起来像这样:

export default defineConfig({
    plugins: [
        laravel({
            input: [
                'resources/css/app.css',
                'resources/js/app.js',
            ],
       }),
    ],
});

resources.app.js

import.meta.glob([
    '../libraries/**'
]);

而我有

<script src="{{ Vite::asset('resources/libraries/modernizr/modernizr-webp.js') }}"></script>

@vite(['resources/css/app.css', 'resources/js/app.js'])

在我的刀片模板的<head>中。
我试过使用Vite::asset()@vite(),结果都一样。我也尝试过将glob从../resources/**更改为../resources/modernizr/*,但此时我假设问题出在其他地方。
我还不理解所有这些捆绑的东西,也不理解JavaScript中导入东西的不同方式。
注意:我在服务器上**运行了npm cinpm run build来安装deps和构建assets。
我很感激你的帮助。这是我的第一个Laravel项目,在开发它的同时我很高兴,但我不能说部署它也是如此。

goqiplq2

goqiplq21#

对于任何来到这里的人,我已经找到了一种实现我想要的方法。不知道这是不是正确的方法,但它确实有效。
我没有在resources.app.js中加载库,而是将它们添加到vite.config.js中的input数组中。现在可以使用@vite()指令将它们加载到刀片视图中。

相关问题