Go+Wails+Vue 开发:添加停止按钮功能的实现

在本教程中,我将展示如何在一个使用 Wails 框架(后端 Go)和 Vue.js(前端)的彩票模拟器项目中添加一个“停止”按钮。由于现有的教程内容较为单一,我将通过具体的实现步骤进行详细说明。

  1. 项目初始化
    首先,通过 Wails 初始化一个 Vue 项目:

wails init -n myproject -t vue

这将创建一个基本的 Wails + Vue 项目,后端是 Go,前端是 Vue。

本项目的详细环境如下

PS C:\Users\28177\Desktop\StudyLog_v1203> wails doctor                  


          Wails Doctor



# Wails
Version | v2.9.2

# System
┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
| OS           | Windows 10 Pro                                                                    |
| Version      | 2009 (Build: 22631)                                                               |
| ID           | 23H2                                                                              |
| Go Version   | go1.22.1                                                                          |
| Platform     | windows                                                                           |
| Architecture | amd64                                                                             |
| CPU          | AMD Ryzen 7 8845HS w/ Radeon 780M Graphics                                        |
| GPU          | AMD Radeon 780M Graphics (Advanced Micro Devices, Inc.) - Driver: 31.0.22060.3004 |
| Memory       | 24GB                                                                              |
└──────────────────────────────────────────────────────────────────────────────────────────────────┘

# Dependencies
┌────────────────────────────────────────────────────────┐
| Dependency | Package Name | Status    | Version        |
| WebView2   | N/A          | Installed | 132.0.2957.140 |
| Nodejs     | N/A          | Installed | 22.11.0        |
| npm        | N/A          | Installed | 10.9.0         |
| *upx       | N/A          | Available |                |
| *nsis      | N/A          | Available |                |
└─────────────── * - Optional Dependency ────────────────┘
  1. 项目结构
    项目结构如下所示:
C:.
├─build
│  ├─bin
│  │  └─log
│  ├─darwin
│  └─windows
│      └─installer
├─dtypes
├─frontend
│  ├─dist
│  │  └─assets
│  ├─src
│  │  ├─assets
│  │  │  ├─fonts
│  │  │  └─images
│  │  └─components
│  └─wailsjs
│      ├─go
│      │  └─main
│      └─runtime
├─log
├─lottolib
└─utils
    ├─bc
    └─xlog
  1. 前端代码:添加按钮
    在 frontend/src/components 目录下,打开你想要修改的 .vue 文件(例如 App.vue),添加一个“停止”按钮,并实现点击事件逻辑。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 后端代码:绑定逻辑
    在 app.py(或 Go 后端代码)中,绑定对应的后端逻辑。例如,我们定义一个 StopLottery 方法来处理“停止”操作。

在这里插入图片描述
在这里插入图片描述

  1. 测试功能
    通过以下命令启动本地开发环境,进行功能测试:

wails dev

测试按钮是否能正确调用后端的停止方法,并显示相应的消息。
在这里插入图片描述在这里插入图片描述

  1. 编译项目
    当功能确认无误时,可以编译并生成可执行文件:
wails build

编译后,生成的可执行文件将存储在 build/bin 目录下,可以在 Windows 上运行。

通过这些简单的步骤,我们成功地为彩票模拟器项目添加了一个停止按钮。此方法不仅适用于彩票模拟器,还可以在其他需要前后端交互的应用中进行类似的实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/968507.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

微服务保护---Sentinel

1. 初始Sentinel 1.1. 雪崩问题及解决方案 1.1.1. 雪崩问题 微服务中,服务间调用关系错综复杂,一个微服务往往依赖于多个其它微服务。 如图,如果服务提供者I发生了故障,当前的应用的部分业务因为依赖于服务I,因此也会…

win32汇编环境,窗口程序使用跟踪条(滑块)控件示例一

;运行效果 ;win32汇编环境,窗口程序使用跟踪条(滑块)控件示例一 ;生成2条横的跟踪条,分别设置不同的数值范围,设置不同的进度副度的例子 ;直接抄进RadAsm可编译运行。重要部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>>>>>…

pnpm的使用

pnpm的使用 1.安装和使用2.统一包管理工具下载依赖 1.安装和使用 pnpm:performant npm ,意味“高性能的npm”。 pnpm由npm/yarn衍生而来,解决了npm/yarn内部潜在的bug,极大的优化了性能,扩展了使用场景。被誉为“最先进的包管理工具”。 pnpm安装指令: npm i -g p…

音视频协议

1. 多媒体信息 1.1 多媒体信息的两个主要特点: 信息量很大 标准语音:64Kbits(8KHz采样,8位编码)高质量音频:3Mbps(100KHz采样,12位编码) 在传输多媒体数据时,对时延和时延抖动均有较高要求 1.2 处理时延…

DeepSeek应用——与word的配套使用

目录 一、效果展示 二、配置方法 三、使用方法 四、注意事项 1、永久化使用 2、宏被禁用 3、office的生成失败 记录自己学习应用DeepSeek的过程...... 这个是与WPS配套使用的过程,office的与这个类似: 一、效果展示 二、配置方法 1、在最上方的…

通过可重入锁ReentranLock弄懂AQS

部分文章来源:JavaGuide 什么是AQS AQS的全称是抽象队列同步器 用来构建锁和同步器的 能简单且高效地构造出大量的锁和同步器 AQS的核心思想是什么 AQS 核心思想: 如果被请求的共享资源空闲,则将当前请求资源的线程设置为有效的工作线程…

【编程实践】vscode+pyside6环境部署

1 PySide6简介 PySide6是Qt for Python的官方版本,支持Qt6,提供Python访问Qt框架的接口。优点包括官方支持、LGPL许可,便于商业应用,与Qt6同步更新,支持最新特性。缺点是相比PyQt5,社区资源较少。未来发展…

DeepSeek-R1本地搭建

1. 前言 现在deepseek火上天了,因为各种应用场景,加上DeepSeek一直网络异常,所以本地部署Deepseek成为大家的另一种选择。 目前网络上面关于DeepSeek的部署方式有很多,但是太麻烦了,本文是一篇极为简单的DeepSeek本地部署方式&…

《qt open3d网格拉普拉斯平滑》

qt open3d网格拉普拉斯平滑 效果展示二、流程三、代码效果展示 二、流程 创建动作,链接到槽函数,并把动作放置菜单栏 参照前文 三、代码 1、槽函数实现 void on_actionFilterLaplacian_triggered();void MainWindow::on_actionFil

DeepSeek-V3网络模型架构图解

DeepSeek-V3网络架构的创新主要在两次,分别是在前馈层的MOE(混合专家模型)和在注意力中的MHA(多头潜在注意力,一种注意力计算规模压缩技术)。 MOE(混合专家模型) 回顾最初的MOE GS…

.net6 mvc 获取网站(服务器端)的IP地址和端口号

注意:是网站的,服务端的 IP地址, 不是当前用户电脑的、本地的IP地址 两个图: 分析: var AbsolutePath HttpContext.Request.Url.AbsolutePath;//"/Meeting/GetLastMeetingOL"var AbsoluteUri HttpContext.…

无人机遥感图像拼接及处理实践技术:生态环境监测、农业、林业等领域,结合图像拼接与处理技术,能够帮助我们更高效地进行地表空间要素的动态监测与分析

近年来,无人机技术在遥感领域的应用越来越广泛,尤其是在生态环境监测、农业、林业等领域,无人机遥感图像的处理与分析成为了科研和业务化工作中的重要环节。通过无人机获取的高分辨率影像数据,结合图像拼接与处理技术,…

[Linux] 信号(singal)详解(二):信号管理的三张表、如何使用coredump文件、OS的用户态和内核态、如何理解系统调用?

标题:[Linux] 信号管理的三张表、如何使用coredump文件、OS的用户态和内核态、如何理解系统调用? 水墨不写bug (图片来源:文心一言) 正文开始: 目录 一、信号管理的三张表 (1)三张表…

Windows中使用Docker安装Anythingllm,基于deepseek构建自己的本地知识库问答大模型,可局域网内多用户访问、离线运行

文章目录 Windows中使用Docker安装Anythingllm,基于deepseek构建自己的知识库问答大模型1. 安装 Docker Desktop2. 使用Docker拉取Anythingllm镜像2. 设置 STORAGE_LOCATION 路径3. 创建存储目录和 .env 文件.env 文件的作用关键配置项 4. 运行 Docker 命令docker r…

w~自动驾驶~合集17

我自己的原文哦~ https://blog.51cto.com/whaosoft/13269720 #FastOcc 推理更快、部署友好Occ算法来啦! 在自动驾驶系统当中,感知任务是整个自驾系统中至关重要的组成部分。感知任务的主要目标是使自动驾驶车辆能够理解和感知周围的环境元素&#…

利用邮件合并将Excel的信息转为Word(单个测试用例转Word)

利用邮件合并将Excel的信息转为Word 效果一览效果前效果后 场景及问题解决方案 一、准备工作准备Excel数据源准备Word模板 二、邮件合并操作步骤连接Excel数据源插入合并域预览并生成合并文档 效果一览 效果前 效果后 场景及问题 在执行项目时的验收阶段,对于测试…

2024 CyberHost 语音+图像-视频

项目:CyberHost: Taming Audio-driven Avatar Diffusion Model with Region Codebook Attention 音频驱动的身体动画面临两个主要挑战:(1)关键人体部位,如面部和手部,在视频帧中所占比例较小&#x…

web前端第三次作业

题目 本期作业 WEB第三次作业 请使用JS实一个网页中登录窗口的显示/隐藏&#xff0c;页面中拖动移动&#xff0c;并且添加了边界判断的网页效 代码图片 效果展示 代码 <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8&qu…

国产ARM处理器工控机如何助力企业实现自主可控?

选择国产ARM处理器工控机的原因可以从多个角度来考虑&#xff0c;包括技术、经济、安全和政策等方面。以下是一些关键理由&#xff1a; 技术优势 低功耗高效能&#xff1a;ARM架构以其出色的能效比著称&#xff0c;适合需要长时间运行的工业控制应用。适应性强&#xff1a;国…

力扣24题——两两交换链表中节点

#题目 #代码 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; }* }*/ clas…