【全栈】vue3.0 + golang + mysql + gorm + jwt + M5stack + Chatgpt集成【博客系统2.1】版本

  1. 2.1版本release

  • 修复博客2.0bug(我的-切换后-博客不能刷新)

  • 增加了远程灯控

  • chatGpt3.0集成

  1. 项目结构

<template><div id="app"><!--    表单处理 ------------------><!--    <MyHeader :addTodo="addTodo"/>--><!--    <MyList :todos="todos"--><!--            :deleteOneTodo="deleteOneTodo"--><!--            :changeTdoDoneById="changeTdoDoneById"/>--><!--    &lt;!&ndash;    <MyListen :todos="todos" />&ndash;&gt;--><!--    &lt;!&ndash;      ref="footer"        &ndash;&gt;--><!--    &lt;!&ndash;    @clearAllTodo 自定义事件&ndash;&gt;--><!--    <MyFooter :todos="this.todos"--><!--              @getTotalCnt="getTotalCnt"/>--><!--    表单处理------------------ --><!--    网络请求---------------------><!--    <Search/>--><!--    <List/>--><!--    网络请求---------------------><!--    插槽------------------------><hr><hr><div class="container"><Category title="电影"><template v-slot:center class="foot"><video controls src="../public/big_buck_bunny.mp4"></video></template><template v-slot:footer ><a  class="foot" href="https://ddyydy.tk">更多电影</a></template></Category><Category title="美食"><template v-slot:center class="foot"><img src="https://img.zcool.cn/community/0198055ab33d70a80120be140429de.JPG@3000w_1l_0o_100sh.jpg"alt=""></template><template v-slot:footer ><a  class="foot" href="https://ddyydy.tk">更多美食</a></template></Category><Category title="游戏"><template v-slot:center class="foot"><ul><li v-for="(g, index) in games" :key="index">{{ g }}</li></ul></template><template v-slot:footer ><div class="foot"><a href="https://ddyydy.tk">网络游戏</a><a href="https://ddyydy.tk">单机游戏</a></div></template></Category><!--      <Category title="游戏">-->
<!--        <template slot-scope="{games}" class="foot">-->
<!--          <ul>-->
<!--            <li v-for="(g, index) in games" :key="index">{{ g }}</li>-->
<!--          </ul>-->
<!--        </template>-->
<!--      </Category>--></div><!--    插槽------------------------><!--    <LightCtr/>--><!--    动画处理---------------><!--    <MovePicV2/>--><!--    动画处理---------------><!--    <my-filter/>--><my-button/><!--    <my-menu/>--><!--    <my-form/>--><hr><the-application-bar></the-application-bar>
<!--    路由器的视图--><router-view class="content"/></div>
</template>
<!--接下来我们在主页的App.vue文件中完成路由加载操作:--><script>
import TheApplicationBar from "@/components/UI/TheApplicationBar";
import MyButton from "@/components/test/MyButton"
import MyMenu from "@/components/menu/MyMenu"
import MyForm from "@/components/form/MyForm"
import MyFilter from "@/components/filter/MyFilter"
import MyList from "@/components/todo/MyList"
import MyHeader from "@/components/todo/MyHeader"
import MyFooter from "@/components/todo/MyFooter"
import MyListen from "@/components/todo/MyListen"
import MovePic from "@/components/dynamicPic/MovePic"
import MovePicV2 from "@/components/dynamicPic/MovePicV2"
import LightCtr from "@/components/webreq/LightCtr"
import Search from "@/components/webreq/Search"
import List from "@/components/webreq/List"
import Category from "@/components/category/Category"
import {getCurrentInstance, provide, ref, watch, watchEffect} from "vue";export default {components: {MyFooter,TheApplicationBar,MyButton,MyMenu,MyFilter,MyList,MyHeader,MyListen,MovePic,MovePicV2,LightCtr,Search,List,Category},// 旧的 2.0 实现方式// data(){//   return {//     todos : JSON.parse(localStorage.getItem("Items")) || []//   }// },// watch: {//   // 对象形式//   todos: {//     deep:true,//     handler(value,old) {//       console.log('深度监视触发-----> id=' + value)//       localStorage.setItem('Items', JSON.stringify(value))//     }//   }// },setup() {// 2.0+ 会报错// this.$refs.footer.$once('atFooter',//     this.getTotalCnt )// 引用实例let todos = ref(JSON.parse(localStorage.getItem("Items")) || [])console.log('初始化全局事件总线-----> id=')const instance = getCurrentInstance()const bus = instance.appContext.config.globalProperties.$busbus.on('bro', (value) => {console.log('准备清理所有已经完成的todos-----> ' + value)clearAllTodo()})bus.on('deleteItemEvent', (value) => {console.log('事件总线收到删除事件-----> id=' + value)todos.value = todos.value.filter((todo) => {return todo.id !== value})console.log('完成删除操作后-----> todos=' + JSON.stringify(todos))})bus.on('checkAllTodo', (isCheckOrUncheck) => {console.log('全选或者反选-----> isCheckOrUncheck=' + isCheckOrUncheck)checkAllTodo(isCheckOrUncheck)})bus.on('updateTodo', (obj) => {console.log('事件总线收到编辑事件-----> id=' + obj.id + " title=", obj.title)// 修改原数组,不会返回变更后的数组 forEachtodos.value.forEach((todo) => {if (todo.id === obj.id) {// console.log("@@@@@"+id)todo.title = obj.title}})})provide('bus', bus)function addTodo(todoObj) {console.log('todos列表增加元素-----> todoObj=', JSON.stringify(todoObj))todos.value.unshift(todoObj)}function changeTdoDoneById(id) {console.log('changeTdoDoneById app', id)todos.value.forEach((todo) => {if (todo.id === id) {todo.done = !todo.done}})}// 组合PAI就是函数 3.0监视对象//   todos: {//     deep:true,//     handler(value,old) {//       console.log('深度监视触发-----> id=' + value)//       localStorage.setItem('Items', JSON.stringify(value))//     }//   }watch(todos, (value, oldValue) => {console.log('监视todos-----> value=', JSON.stringify(value))localStorage.setItem('Items', JSON.stringify(value))}, {deep: true})function deleteOneTodo(id) {todos.value = todos.value.filter((todo) => {return todo.id !== id})}function checkAllTodo(done) {todos.value.forEach((todo) => {todo.done = done})}function clearAllTodo() {todos.value = todos.value.filter((todo) => {return !todo.done})}function getTotalCnt(cnt) {console.log('获取到了总的todo数量', cnt)}let foods = ref(['火锅', '烧烤', '带鱼', '小龙虾', '牛排'])let games = ref(['红色警戒', '穿越火线', '劲舞团', '超级玛丽'])let films = ref(['《火锅》', '《烧烤》', '《带鱼》', '《迷你》', '《你好,李焕英》'])return {todos, addTodo, changeTdoDoneById, deleteOneTodo, getTotalCnt,foods, games, films}}
}
</script><style>#app {/*background: url("./assets/bg.jpeg");*/width: 100%;height: 100%;position: center;background-size: 100% 100%;
}/*body {*/
/*  margin: 0;*/
/*  font-family: Arial, Helvetica, sans-serif;*/
/*}*//*.content {*/
/*  padding-top: 5.5vh;*/
/*  padding-left: 10%;*/
/*}*/.btn-edit {color: #139be1;background-color: #2c3e50;border: 1px solid #553030;margin-right: 5px;
}.container, .foot {display: flex;/*中间间距 缝隙*/justify-content: space-around;
}img {display: block;margin: 0 auto;width: 55%;height: 60%;align-items: center;
}video {width: 100%;height: 50%;
}
</style>
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from "@/store";
import mitt from 'mitt'const bus = mitt()
const app = createApp(App)
app.config.globalProperties.$bus = busapp.use(router)
app.use(store)
app.mount('#app')

  1. 小结

系统还是很粗糙,后面计划学习若依通用的管理设计+饿了么UI,期待....

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【自然语言处理】【大模型】ChatGLM-6B模型结构代码解析(单机版)

ChatGLM-6B模型结构代码解析(单机版) ​ 本文介绍ChatGLM-6B的模型结构&#xff0c;代码来自https://huggingface.co/THUDM/chatglm-6b/blob/main/modeling_chatglm.py。 相关博客 【自然语言处理】【大模型】ChatGLM-6B模型结构代码解析(单机版) 【自然语言处理】【大模型】BL…

【自然语言处理】【大模型】BLOOM模型结构源码解析(单机版)

BLOOM模型结构源码解析(单机版) ​ 本文基于transformers中BLOOM模型代码来解析BLOOM的原理及实现。 相关博客 【自然语言处理】【大模型】ChatGLM-6B模型结构代码解析(单机版) 【自然语言处理】【大模型】BLOOM模型结构源码解析(单机版) 【自然语言处理】【大模型】极低资源微…

最新发布!面向开发者的 ChatGPT Prompt Engineering 免费教程,吴恩达与OpenAI合作打造!...

就在几小时之前&#xff0c;吴恩达在Twitter上宣布了与OpenAI合作的最新免费教程&#xff1a;《ChatGPT Prompt Engineering for Developers》 我们可以通过下面的链接&#xff0c;直达官网网站&#xff1a; https://www.deeplearning.ai/short-courses/chatgpt-prompt-enginee…

Datawhale-基于向量检索减少chatGPT的幻觉

AI的幻觉 可以使用CVP技术栈解决上述问题 CVP技术栈 ossChat Application 向量数据库 Zilliz Cloud是Milvus的托管服务。 基于Langchain搭建问答系统

chatgpt赋能python:Python中连接数据库的方式

Python中连接数据库的方式 数据库是现代Web应用程序中必不可少的组成部分之一。Python是一个功能丰富的编程语言&#xff0c;为我们提供了许多连接数据库的选项。在本文中&#xff0c;我们将介绍Python中的一些最受欢迎的数据库连接选项&#xff0c;并帮助您选择最适合您项目的…

chatgpt赋能python:Python如何添加数据库

Python如何添加数据库 介绍 Python是一种高级的、通用的、解释型的编程语言&#xff0c;因其简单易学、可读性强而被广泛应用在各种领域&#xff0c;尤其是数据处理、Web开发等方面。随着Web应用越来越流行&#xff0c;数据库的使用也变得越来越普遍&#xff0c;因此&#xf…

chatgpt赋能Python-python怎么装数据库

介绍 Python 是一种强大的编程语言&#xff0c;能够让程序员轻松地编写高效的代码来解决各种问题。Python 也被广泛用于 web 应用程序的开发。这些应用程序通常需要与数据库进行交互。本文将介绍如何在 Python 中安装数据库以便进行数据操作。 步骤 第一步&#xff1a;选择一…

机械臂全面学习---moveit和gazebo联合仿真

1、修改XXX.moveit_config/config/ros_controllers.yaml # MoveIt-specific simulation settings moveit_sim_hw_interface:joint_model_group: controllers_initial_group_joint_model_group_pose: controllers_initial_pose_ # Settings for ros_control control loop gener…

机械原理课程设计 洗瓶机机构设计(设计说明书+3张CAD图纸+连杆机构设计软件)

目 录 一 前 言 1 二 设计任务书 1 1、设计题目 1 2、设计任务 2 三 工艺动作分解和工作原理 2 1、工艺动作分解 2 2、原始数据 3 四 机械运动方案设计 3 1、分析设计要求 3 2、推瓶机构方案的设计 4 &#xff08;1&#xff09; 推瓶机构方案的选择 4 &#xff08;2&#xff09…

机械搬运手结构设计

目录…1 文摘…3 Abstract…3 第一章 绪论 1.1机械手概述…4 1.2机械手的组成和分类…4 1.2.1机械手的组成. 1.2.2机械手的分类 1.3国内外发展状况… …7 1.4课题的提出及主要任务………………………………………………8 1.4.1课题的提出 1.4.2课题的主要任务 第二章 机械手的设…

测试底妆的软件,一天一款粉底液,实测7款“网红”粉底液的妆感、遮瑕、持妆效果...

每次在入手粉底液前&#xff0c;各位会关注她的什么效果呢&#xff1f;是持妆度&#xff1f;还是妆感&#xff1f;还是遮瑕效果&#xff1f;其实&#xff0c;一款粉底液不可能兼顾我们的所有皮肤需求&#xff0c;有的粉底可能侧重遮瑕&#xff0c;有个侧重保湿&#xff0c;有的…

测试底妆的软件,你最想看的粉底液测评,我一次性测了12款!!

正文开始前&#xff0c;提醒大家不要忘记我们的【为你老公/老婆打call】征集还在 进行中哦 &#xff0c;每天抽2个留言幸运鹅送现金红包也在火热开展中哟~ 仙女萌好呀~这里是放假超开心哒狗砸&#xff01; 十一的第三天&#xff0c;没想到我就勤勤恳恳来更文啦&#xff0c;毕竟…

ChatGPT爆火!“风险”还是“风口”?数据分析师会被取代吗?

近日&#xff0c;据财联社报道&#xff0c;ChatGPT背后的开发商OpenAI发话&#xff0c;该公司首席技术官Mira Murati在采访中警告道&#xff1a;现在需要监管机构进行介入&#xff0c;以防止ChatGPT等生成式AI系统对社会产生潜在负面影响。 当问及监管机构现在介入是否为时过早…

【支付】第三方支付收单机构

简要概述 现在&#xff0c;在银行卡收单市场里&#xff0c;第三方收单机构在全国范围类极速发展。 收单牌照的第三方支付机构&#xff0c;即通过线下布放POS&#xff0c;替商户收单&#xff0c;第三方支付机构一般是找一个合作的收单银行&#xff0c;对于收单银行自己的持卡人…

使用银联商务实现微信小程序支付

最近公司的小程序需要使用到支付功能&#xff0c;我们使用的是银联商务的支付&#xff0c;那么如何在微信小程序中对接银联商务的微信小程序支付呢&#xff1f;这里我记录下我在微信小程序中实现银联商务的微信小程序支付流程 一&#xff1a;接口部分&#xff1a; 这里注意银…

Android支付宝,微信,银联支付支付的集成

移动支付 用户使用移动的终端完成对所购买商品或者服务的支付功能;分为近场支付(蓝牙支付,刷卡,滴卡),和远程支付(网上支付,短信支付) app支付模块 常见的支付厂商-->常见的支付方式 支付宝:阿里公司微信:腾讯公司银联:联合起来的结构财付通:腾讯公司支付宝钱包:阿里公司百…

1.Java接入银联支付(chinapay)教程及避坑点

一、背景及效果展示 现如今&#xff0c;诸多的供应链系统需要使用电子钱包功能&#xff0c;所以接入银联B2B无卡支付&#xff0c;是很多系统应用需要做的事情。银联支付的类型分很多种&#xff1a;网关支付&#xff08;带token请求实现&#xff0c;下次有空再分享&#xff09;…

前端直接调用银联支付接口,使用form表单访问银联

直接调转到银联页面 银联支付 <template> <div class"pay"> <form action"https://gateway.95516.com/gateway/api/frontTransReq.do" method"post" id"payUniconSubmit"> <div v-show"false…

PHP接入银联在线网关支付

网站支付&#xff1a;一般接入微信支付、支付宝支付、银联支付&#xff0c;本文介绍的是如何接入中国银联在线网关支付 银联介绍 银联在线支付网关是中国银联联合各商业银行为持卡人提供的集成化、综合性互联网支付工具&#xff0c;主要支持输入卡号付款、用户登录支付、网银支…

移动支付--银联,支付宝,微信(android)

在这个移动互联网高速发展的时代,手机已经成为人们生活或者出行之中不可缺少的设备了&#xff0c;现在很多城市的商户都可以采用支付宝&#xff0c;微信支付了&#xff0c;人们出门只需要随身携带带手机&#xff0c;不用带大量现金就可以放心购物了。现在的很多移动互联网产品都…