如何配置 Vite 访问公共文件夹之外的文件?
P粉132730839
P粉132730839 2024-04-02 12:39:53
0
1
523

我有这个文件结构:

  • 我的项目
    • 应用程序
    • 引导程序
    • 配置
    • 数据库
    • 节点模块
      • pdfjs-dist
        • 构建
          • pdf.js
    • 公开
      • 上传
        • 文件
          • solution_12.pdf
    • 资源

有人可以帮我知道如何通过配置 Vite 访问 pdf.js 吗?

我尝试过:

在vite.config.js中,导出默认的defineConfig:

plugins: [
        laravel({
            input: [
                'node_modules/pdfjs-dist/build/pdf.js'
            ],
            refresh: true,
        }),
    ],

我在我的 app.blade.php 中使用了 @vite:

@vite([
    'node_modules/pdfjs-dist/build/pdf.js'
    ])

我得到了这个错误: 无法在 Vite 清单中找到文件:node_modules/pdfjs-dist/build/pdf.js。

谁能给我解释一下吗?

P粉132730839
P粉132730839

全部回复(1)
P粉321676640

从你的问题中我看出你似乎正在使用 Laravel(很好,因为我也很熟悉)。

我建议您查看 Laravel 文档,特别是新安装 Laravel 时开箱即用的 vite 配置。通过遵循他们指定的目录约定,您将避免尝试打破他们的模式而带来无尽的麻烦。查看 Laravel 文档的以下部分将是一个很好的起点: https://laravel.com/docs/10.x/vite#main-内容

在理想的世界中,您将遵循 Laravel 假设的相同约定...即您的项目有一个 resources/js 文件夹,这是您通常存储项目的 javascript 的位置(例如 app例如.js)。

只要您在应用程序中需要的地方导入 javascript 文件,最好的解决方案可能是使用 resources/js/app.js 作为您的 Vite“输入”,并在 Vite Blade 指令中引用它好吧(如 resources/js/app.js)。然后,Vite 将在您的应用程序需要时导入该依赖项。

# Your vite.config.js excerpt would look like:

plugins: [
    laravel({
        input: [
            'resources/js/app.js'
        ],
        refresh: true,
    }),
],

# Your @vite blade directive would look like:

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

# Your import call (wherever you're using this dependency) might look like:

import 'pdfjs-dist/build/pdf.js';

希望有帮助!

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板