代码之家  ›  专栏  ›  技术社区  ›  Popeye

Tauri生产构建

  •  0
  • Popeye  · 技术社区  · 2 年前

    我和鲁斯特和牛头一起工作。 我已经创建了基础应用程序。 如果我构建它,安装后运行良好

    # build command
    cargo tauri build
    
    # installation
    sudo dpkg -i tauri-app.0.0.0.deb
    

    下一步我创建了一个新文件 index2.html 和在 index.html 我添加了以下行

    <a href="index2.html">Open the second file </a>
    

    如果我使用以下命令运行:

    cargo tauri dev
    

    工作正常,我可以访问 index2.html 但如果我构建并安装,则找不到index2。

    如有任何帮助,我们将不胜感激。

    -----编辑------

    Creating additional HTML pages 我做了一些改进。我在中添加了以下代码 vite.config.ts

    import { defineConfig } from "vite";
    import { resolve } from 'path';
    
    const mobile =
      process.env.TAURI_PLATFORM === "android" ||
      process.env.TAURI_PLATFORM === "ios";
    
    // https://vitejs.dev/config/
    export default defineConfig(async () => ({
      // Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
      // prevent vite from obscuring rust errors
      clearScreen: false,
      // tauri expects a fixed port, fail if that port is not available
      server: {
        port: 1420,
        strictPort: true,
      },
      // to make use of `TAURI_DEBUG` and other env variables
      // https://tauri.studio/v1/api/config#buildconfig.beforedevcommand
      envPrefix: ["VITE_", "TAURI_"],
      build: {
        // Tauri supports es2021
        target: process.env.TAURI_PLATFORM == "windows" ? "chrome105" : "safari13",
        // don't minify for debug builds
        minify: !process.env.TAURI_DEBUG ? "esbuild" : false,
        // produce sourcemaps for debug builds
        sourcemap: !!process.env.TAURI_DEBUG,
    // added code
        build: {
          rollupOptions: {
            input: {
              index: resolve(__dirname, 'index.html'),
              index2: resolve(__dirname, 'index2.html'),
            },
          },
        },
      },
    }));
    
    

    但是,没有看到任何改善。

    0 回复  |  直到 2 年前
        1
  •  0
  •   Popeye    2 年前

    我已经解决了这个问题。

    1. 最新的create tauri app命令默认情况下注入所有vite。
    2. 我需要告诉vite处理我的html文件而不是index.html。为此,我必须在vite.config.ts文件中注册文件名。详细信息见下页 Creating additional HTML pages
    3. 我对图像有一些问题。为了解决这个问题,我遵循了这个邀请页面的指南 Importing Asset as URL