Skip to content
GitHub

wails

wails 官网 wails 是一个基于 Go 和 web 技术的桌面应用开发框架

创建项目前确保安装 Go 及 Node

 # 安装 wails
 $ go install github.com/wailsapp/wails/v2/cmd/wails@latest
 
 $ wails version
 v2.10.2

 # 检查系统依赖
 $ wails doctor
 
 # 使用 react typescript 模板
 $ wails init -n <projectName> -t react-ts

.
├── build/     # 构建输出路径
   ├── appicon.png
   ├── darwin/
   └── windows/
├── frontend/   # 前端项目路径
   ├── dist    # 前端导出路径
   └── wailsjs # 前后端交互协议文件
├── go.mod
├── go.sum
├── main.go     # 后端项目入口
└── wails.json  # 项目配置

使用 nextjs 作为前端项目, frontend 文件夹改名 frontend_bak,创建新 frontend 文件夹初始化 nextjs 项目

import type { NextConfig } from "next";

const nextConfig: NextConfig = {
  /* config options here */
  // next 设置 build 输出到 dist 路径
  output: "export",
  distDir: 'dist',
  reactStrictMode: true,
  compress: false,
};

export default nextConfig;
{
  "$schema": "https://wails.io/schemas/config.v2.json",
  "name": "windows",
  "outputfilename": "windows",  // 项目名称
  "frontend:install": "pnpm install", // 前端项目安装依赖命令
  "frontend:build": "pnpm run build", // 前端项目构建命令
  "frontend:dev:watcher": "pnpm run dev", // 前端项目开发者模式命令
  "frontend:dev:serverUrl": "auto",
  "author": {
    "name": "John",
    "email": "John@example.com"
  }
}
 # 开发者模式
 $ wails dev

 # 构建软件 build/bin/xxx.exe
 $ wails build