首页
关于
Search
1
信创日志:银河麒麟V10 安装 国产NGINX
1,318 阅读
2
信创日志:银河麒麟V10 安装 国产JDK - Alibaba dragonwell
414 阅读
3
docker_portainer安装教程
395 阅读
4
搭建SMB 的网络服务器
264 阅读
5
Docker离线安装教程
259 阅读
默认分类
docker虚拟化技术
网络服务器
数据库
spring
spring boot
spring cloud
信创-国产化
鸿蒙应用开发
Go
树莓派
AidLux OS
Vue 3
React
登录
/
注册
Search
标签搜索
docker
自建仓库
regustry
微服务
spring cloud
跨平台应用
李胤
累计撰写
27
篇文章
累计收到
32
条评论
首页
栏目
默认分类
docker虚拟化技术
网络服务器
数据库
spring
spring boot
spring cloud
信创-国产化
鸿蒙应用开发
Go
树莓派
AidLux OS
Vue 3
React
页面
关于
搜索到
27
篇与
的结果
2025-07-30
Wails教程:快速创建
创建项目{tabs}{tabs-pane label="React"}{alert type="info"}由 Facebook 开发的声明式 UI 库,基于组件化思想,使用 JSX 语法,生态丰富,广泛应用于单页应用和大型项目。{/alert}使用 JavaScript 生成一个 React 项目:wails init -n myproject -t react如果您更愿意使用 TypeScript:wails init -n myproject -t react-ts{/tabs-pane}{tabs-pane label="Vue"}{alert type="info"}渐进式 JavaScript 框架,易于上手,核心库只关注视图层,可与其他库或现有项目整合,有完善的官方文档和生态。{/alert}使用 JavaScript 生成一个 Vue 项目:wails init -n myproject -t vue如果您更愿意使用 TypeScript:wails init -n myproject -t vue-ts{/tabs-pane}{tabs-pane label="Svelte"}{alert type="info"}与传统框架不同,它在构建时将代码编译为原生 JavaScript,运行时无需虚拟 DOM,性能优秀,适合构建高效的 Web 应用。{/alert}使用 JavaScript 生成一个 Svelte 项目:wails init -n myproject -t svelte如果您更愿意使用 TypeScript:wails init -n myproject -t svelte-ts{/tabs-pane}{tabs-pane label="Preact"}{alert type="info"}轻量级的 React 替代方案,API 与 React 相似,体积小巧(约 3KB),适合对性能和体积有严格要求的场景。{/alert}使用 JavaScript 生成一个 Preact 项目:wails init -n myproject -t preact如果您更愿意使用 TypeScript:wails init -n myproject -t preact-ts{/tabs-pane}{tabs-pane label="Lit"}{alert type="info"}由 Google 开发的轻量级 Web 组件库,基于 Web Components 标准,语法简洁,专注于构建可复用的组件。{/alert}使用 JavaScript 生成一个 Lit 项目:wails init -n myproject -t lit如果您更愿意使用 TypeScript:wails init -n myproject -t lit-ts{/tabs-pane}{tabs-pane label="Vanilla"}{alert type="info"}通常指原生 JavaScript(即不使用任何框架或库),直接使用浏览器提供的 API 进行开发,适合简单场景或需要深入理解 JS 基础的项目。{/alert}使用 JavaScript 生成一个 Vanilla 项目:wails init -n myproject -t vanilla如果您更愿意使用 TypeScript:wails init -n myproject -t vanilla-ts{/tabs-pane}{/tabs}项目结构概要/main.go - 主应用 /frontend/ - 前端项目文件 /build/ - 项目构建目录 /build/appicon.png - 应用程序图标 /build/darwin/ - Mac 特定的项目文件 /build/windows/ - Windows 特定的项目文件 /wails.json - 项目配置 /go.mod - Go module 文件 /go.sum - Go module 校验文件 frontend 目录没有特定于 Wails 的内容,可以是您选择的任何前端项目。build 目录在构建过程中使用。 这些文件可以修改以自定义您的构建。 如果从 build 目录中删除文件,将重新生成默认版本。go.mod 中的默认模块名称是“changeme”。 您应该将其更改为更合适的内容。
2025年07月30日
15 阅读
0 评论
0 点赞
2025-07-16
Go语言学习笔记:Consul访问方式之DNS
本次使用了一个DNS包是miekg/dns,可以自由定义从哪个DNS去获取对应的IP信息,如果没有这个包请先下载,go get github.com/miekg/dns下载后编写如下代码:package main import ( "fmt" "log" "github.com/miekg/dns" ) func queryConsulDNS(serviceName, consulAddr string) ([]string, error) { m := new(dns.Msg) m.SetQuestion(dns.Fqdn(serviceName), dns.TypeA) m.RecursionDesired = false // 不需要递归 c := new(dns.Client) in, _, err := c.Exchange(m, consulAddr+":8600") if err != nil { return nil, fmt.Errorf("DNS 查询失败: %v", err) } var ips []string for _, a := range in.Answer { if ipRecord, ok := a.(*dns.A); ok { ips = append(ips, ipRecord.A.String()) } } return ips, nil } func main() { serviceName := "consul.service.consul" // 这个不用变,每个consul启动后就有的 consulAddr := "xxx.xxx.xxx.xxx" // 注意这里不要加端口,ip是你的consul物理机的IP(内外网都行,保证当前测试机能访问到就行),我们手动指定 :8600,这个端口是consul的DNS服务端口 log.Printf("【客户端】查询 Consul DNS: %s", serviceName) ips, err := queryConsulDNS(serviceName, consulAddr) if err != nil { log.Fatalf("【客户端】DNS 查询失败: %v", err) } if len(ips) == 0 { log.Fatalf("【客户端】未找到服务 IP 地址") } for _, ip := range ips { log.Printf("【客户端】发现服务 IP: %s", ip) } }运行结果如下:2025/07/16 14:55:01 【客户端】查询 Consul DNS: helloworld.service.consul 2025/07/16 14:55:01 【客户端】发现服务 IP: 192.168.10.229
2025年07月16日
10 阅读
0 评论
0 点赞
2025-07-11
Go语言学习笔记:自定义文件之间进行相互调用
一个语言强大不强大就看调用文件是否方便不方便,效率高不高的问题就会存在,分开各个文件是为了增强代码的可读性,并为此提供统一的对外函数,也就是对应软件系统的可维护和可扩展,这样就是大系统的基础。首先,想要调用各个本地目录中的文件(也就是同一个module)下,以下教程是unix或基于此的系统,第一步:先创建项目文件夹mkdir myproject第二步:初始化项目cd myproject && go mod init myproject初始化项目后,目录中多出一个go.mod,以下就是文件内容module myproject go 1.24.4第三步:创建main.go和其它要调用文件在项目根目录下,创建main.go,然后要想调用其他的文件,就需要先在项目创建根目录下创建一个目录,然后在这个文件下创建下对应的文件,. ├── calculator │ └── calculator.go ├── external │ ├── exchange │ │ └── exchange.go │ ├── letter │ │ └── letter.go │ └── strings │ └── strings.go ├── funcdemo │ └── funcdemo.go ├── go.mod └── main.go这是我的写的一个练手项目,这里边就是完整的项目以下文件是main.gopackage main import ( "fmt" "myproject/funcdemo" ) func main() { a, _ := funcdemo.Calculator(105, 7) fmt.Println("105 x 7 = ", a) }以下文件是funcdemo.gopackage funcdemo import "fmt" /* @param a 这是第一个参数 @param b 这是第二个参数 */ func Calculator(a, b int) (mul int, div int) { //在这里,简单的赋值就可以 //并初始化它的值 mul = a * b div = a / b //这里有return关键字 //没有任何结果参数 return } func Mul(a, b int) int { c := a * b fmt.Printf("这是一个结果:%d\n", c) return 0 }{callout color="#f0ad4e"}go现在用的是module管理,所以一个module就是一个项目,其中仅有一个 go.mod 在funcdemo.go文件中,你可以看到方法名字第一个是大写,这个是有说法的,涉及到私有函数和公共函数,方法名全部小写是私有函数仅在当前包中使用,而方法名第一个字母大写的是公共函数,可以在包外调用的时候使用。{/callout}
2025年07月11日
6 阅读
0 评论
0 点赞
2025-07-09
Go语言学习笔记:从GO中找JAVA封装类
最近都是在找时间学习GO语言,这个今天学习到了GO的方法,通过一段代码你就很快明白他的类和方法的定义package main import ( "fmt" ) type author struct { name string particles string } func (a author) show() { fmt.Printf("作者名称:%s \n", a.name) fmt.Printf("作者特征:%s \n", a.particles) } func main() { // 调用 strings 模块的函数 // a, _ := funcdemo.Calculator(105, 7) // fmt.Println("105 x 7 = ", a) // fmt.Println("105 / 7 = ", b) // funcdemo.Mul(23, 45) // fmt.Print("wejriwjer\n") // defer funcdemo.Mul(23, 45) res := author{ name: "作者", particles: "203", } res.show() }这一段代码对应JAVA中的类的部分功能,类似于你在JAVA中新建了一个实体类,但是属性都是公共权限的属性,你可以在创建类的示例后,直接访问这个属性。说明:涉及到同名的方法,与java不同,在一个文件中,它类似于java中有不同类的不同方法,接受类型就是java的类,所以不同的类有同名的方法,不能支持同接受类型的同名方法不同参数的方法,即是JAVA中的重载概念。
2025年07月09日
9 阅读
0 评论
0 点赞
2025-06-25
Go语言学习笔记:Go Micro——Consul注册中心
应用安装安装 Consul1、访问官网的下载地址: 下载地址:https://www.consul.io/downloads 左侧的红色框内容是你要选择的操作系统的类型,我现在使用的是mac电脑,选择 macOS , 然后看右侧的安装教程。教程中包含包管理的方式和二进制进行安装,右上角是可以选择版本的。{dotted startColor="#ff6c6c" endColor="#1989fa"/}验证并启动验证方式在命令行中输入以下命令进行回车consul --version开发环境启动在命令行中输入以下命令进行回车consul agent -dev命令执行完毕后,浏览器中访问 http://localhost:8500/ {dotted startColor="#ff6c6c" endColor="#1989fa"/}生产环境配置Consul 集群配置# 节点1 consul agent -server -bootstrap-expect=3 -data-dir=/var/consul -node=consul-1 -bind=192.168.1.10 -client=0.0.0.0 -config-dir=/etc/consul.d # 节点2 consul agent -server -data-dir=/var/consul -node=consul-2 -bind=192.168.1.11 -client=0.0.0.0 -config-dir=/etc/consul.d -join=192.168.1.10 # 节点3 consul agent -server -data-dir=/var/consul -node=consul-3 -bind=192.168.1.12 -client=0.0.0.0 -config-dir=/etc/consul.d -join=192.168.1.10
2025年06月25日
13 阅读
0 评论
0 点赞
1
2
3
...
6