当前位置: 首页 > news >正文

go+gin+vue入门

后端框架

1、安装go、goland
2、创建空项目
3、下载要用的包:命令行输入go get -u github.com/xxxx
4、安装mysql数据库,使用navicat创建数据库。
5、按照项目框架搭建目录、文件、代码:如router、model…
6、运行测试,go run main.go

前端框架

1、安装node.js、WebStorm
2、生成前端项目:后端项目同级目录cmd执行 npm create vite@latest
3、将项目导入开发工具Webstorm
4、安装依赖:webstorm命令行执行 npm install
5、运行测试:npm run dev
6、导入vue-router4:npm install vue-router@4
7、按照项目框架搭建目录、文件、代码:如router、views…

后端开发基本内容

初始化路由:创建router目录,目录下创建app.go文件

package routerimport "github.com/gin-gonic/gin"func App() *gin.Engine {r := gin.Default()return r
}

初始化数据库:创建model目录,目录下创建init.go文件

package modelimport ("gorm.io/driver/mysql""gorm.io/gorm"
)var DB *gorm.DBfunc Database() {dsn := `root:yeanhoo@tcp(127.0.0.1:3306)/analysis_sys?charset=utf8mb4&parseTime=True&loc=Local`db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{DisableForeignKeyConstraintWhenMigrating: true,})if err != nil {panic(err)}DB = db
}

项目根目录创建main.go文件

package mainimport ("analysis_sys/model""analysis_sys/router"
)func main() {//初始化gorm.dbmodel.Database()r := router.App()r.Run(":8081")
}

在这里插入图片描述

前端开发基本内容

src目录下创建router目录,目录下创建index.ts

//导入vue-router模块
//导入vue-router模块
import {createRouter,createWebHashHistory} from "vue-router"//定义路由
const routers = [{path:"/",name:"login",meta: {title:"应急响应单兵应用"},component: ()=> import("../views/Login.vue")}]//创建路由实例并传递router配置
const router = createRouter({history: createWebHashHistory(),routes:routers})export default router

main.ts中导入index.ts,进行路由的定义和注册

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import router from './router'const app = createApp(App)
app.use(router)
app.mount('#app')

src目录下创建views目录,目录下新建vue组件,Login.vue

<script setup lang="ts"></script><template>
<h1>登录页面</h1>
</template><style scoped></style>

修改src目录下app.vue,用于显示与当前路由匹配的视图组件。

<script setup lang="ts"></script><template>
<router-view></router-view>
</template><style scoped></style>

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Prometheus 告警Promesql整理
  • 这些常用测试平台,你们公司在用的是哪些呢?
  • 全新一代理想智能驾驶开启万人体验团招募,OTA 6.2正式全量推送
  • 华硕天选Air:开学季的性价比之巅
  • 聚焦工业自动化领域,港迪技术IPO上市加码技术研发投入
  • MySQL:简述对事务的认识
  • 排序算法之希尔排序详细解读(附带Java代码解读)
  • Nginx轮询负载均衡配置指南:实现高效请求分发
  • 无人机遥控器工作原理!!!
  • 全面解析:动态住宅代理的关键优势
  • axios取消请求CancelToken的原理解析及用法示例
  • 手撕数据结构与算法——拓扑排序
  • 【STM32单片机_(HAL库)】3-3【中断EXTI】使用SysTick模拟多线程
  • 数据结构(树、平衡树、红黑树)
  • 深入理解 XSS 漏洞:原理、危害与防范
  • [PHP内核探索]PHP中的哈希表
  • 《Java编程思想》读书笔记-对象导论
  • 【附node操作实例】redis简明入门系列—字符串类型
  • Docker容器管理
  • Java反射-动态类加载和重新加载
  • js ES6 求数组的交集,并集,还有差集
  • laravel with 查询列表限制条数
  • learning koa2.x
  • Vue组件定义
  • Web Storage相关
  • 当SetTimeout遇到了字符串
  • 前端性能优化——回流与重绘
  • 入口文件开始,分析Vue源码实现
  • 设计模式走一遍---观察者模式
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 大数据全解:定义、价值及挑战
  • 湖北分布式智能数据采集方法有哪些?
  • ​​​【收录 Hello 算法】10.4 哈希优化策略
  • #565. 查找之大编号
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • #Z2294. 打印树的直径
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (1)Jupyter Notebook 下载及安装
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (31)对象的克隆
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (vue)页面文件上传获取:action地址
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (汇总)os模块以及shutil模块对文件的操作
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .gitignore
  • .NET 8.0 中有哪些新的变化?
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。