繁体   English   中英

vite@2 构建中缺少组件和资产

[英]Missing components and assets in vite@2 build

我能够使用 vite@1 进行功能构建,现在我已经更新了我的配置和模块以使用 vite@2,一些资产和组件无法正确加载并且路径与真正的绝对路径不对应路径。

它在 dev 上运行完美,虽然我正在使用 electron 制作应用程序,但这应该不是问题,因为正如我之前提到的那样,vite@1 的构建很好。

资产不是问题,它们存在于构建文件夹中。 在需要它们时似乎是一个问题。

这是一个更详细的问题,您可以在其中找到所有错误消息和屏幕截图:

https://github.com/MangoTsing/vite-electron-quick/issues/11

虽然我不认为它与 electron 再次有关。 我仍然把它放在 vite-electron-quick 上以排除这种可能性。

这是我的 vite 配置

import { join } from 'path'
import { UserConfig } from 'vite'
import dotenv from 'dotenv'
import vue from '@vitejs/plugin-vue'

dotenv.config({ path: join(__dirname, '.env') })
const root = join(__dirname, 'src/render')

const config: UserConfig = {
  root,
  resolve: {
    alias: {
      '/@/': root,
    }
  },
  base: './',
  build: {
    outDir: join('../../dist/render'),
    emptyOutDir: true,
    assetsInlineLimit: 0
  },
  server: {
    port: +process.env.PORT,
  },
  plugins: [
    vue()
  ],
  optimizeDeps: {
    exclude: [
      'electron-is-dev',
      'electron-store',
    ]
  },
}

export default config

再生产

https://github.com/denyncrawford/mismor-guillotine

系统信息

  • vite
  • 操作系统:Windows 10 2004
  • 节点版本:15.2.0
  • Package 管理器(npm)和版本:7.0.8

解决了! 发生这种情况是因为如果未提供应用程序,vue-router 的createWebHistory()无法处理导航。 它在开发模式下工作,因为 vite 为应用程序提供服务,但是当您在浏览器中构建和打开文件时,它不会。 所以你可能会说:这是非常基本的,好吧不......实际的问题是由于 vite 在 vite@2 的巨大变化以及 starter-code-templates 必须适应它的方式引起的。 我将 vite 与 electron 一起使用,因此迁移我正在使用的启动器有点盲目运行。 我发现启动器不再提供文件,而是直接在main.js上加载文件,所以因为我不知道这是为什么,我没有再次提供文件,而是改为createWebHashHistory() at我的路由器配置,然后它工作!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM