- 博客(51)
- 收藏
- 关注
原创 golang 安装gin包、创建路由基本总结
本文介绍了如何使用Gin框架进行Web开发,包括安装Gin包和热加载工具Fresh,以及如何配置路由和返回不同类型的数据。首先,通过终端命令安装Gin和Fresh,并启动热加载功能。接着,展示了如何创建路由并返回字符串、JSON、结构体、JSONP、XML和HTML等数据格式。文章还详细说明了如何在HTML模板中使用条件判断和循环遍历数据,以及如何向模板中传递变量和结构体。通过这些示例,开发者可以快速上手Gin框架,并实现常见的Web开发需求。
2025-05-18 18:44:35
372
原创 golang读、写、复制、创建目录、删除、重命名,文件方法总结
本文介绍了Go语言中常见的文件操作,包括读取、写入、复制、创建目录、删除目录/文件以及重命名文件。在读取文件时,提供了三种方案:逐字节读取、逐行读取以及一次性读取。写入文件时,展示了四种方法,包括直接写入字符串、字节数组、使用缓冲写入以及覆盖写入。复制文件通过读取源文件内容并写入目标文件实现。创建目录支持单级和多级目录的创建。删除操作可以删除指定目录或文件。重命名文件则通过os.Rename函数实现。这些操作涵盖了Go语言中文件处理的基本需求。
2025-05-17 23:33:47
399
原创 区块链基本理解
区块链是一种由数据块按时间顺序链接而成的分布式账本技术,每个节点都拥有账本的副本。分布式账本通过共识机制确保数据一致性,P2P网络则提供了去中心化的通信和数据存储方式。共识算法如工作量证明(PoW)、权益证明(PoS)和委托权益证明(DPoS)用于选择记账节点,确保网络的安全和效率。密码算法如非对称加密和哈希算法则用于数据加密和验证,保障数据的完整性和真实性。区块链技术通过这些机制实现了去中心化、安全性和透明性。
2025-05-17 19:35:36
865
1
原创 golang中的反射示例
本文介绍了Go语言中反射的基本概念和使用方法。首先,通过reflect.TypeOf()和reflect.ValueOf()函数,可以获取变量的底层类型和值。接着,演示了如何通过反射修改底层值,特别是使用Elem()方法获取指针指向的值并进行修改。最后,文章通过结构体反射的示例,展示了如何遍历结构体字段、获取字段值、修改字段值,以及如何使用结构体标签进行数据验证。反射功能强大,但需谨慎使用,因其可能带来性能开销。
2025-05-17 16:04:44
482
原创 Vue3 使用 ref、reactive响应式丢失
reactive 使用toRefs toRef 使响应式对象变成普通响应式对象(简单来说 将reactive转为ref后面需要带value),而不破坏响应式。reactive 替换整个对象 会失去响应式 需要使用toRef / toRefs 将响应式对象转为普通响应式。单独引用ref reactive 修改其中某一个属性,状态变量不会丢失,正常使用。ref可以替换整个对象,依然保持响应式。ref可以正常结构赋值,依然保持响应式。
2024-10-19 13:46:53
829
1
原创 HarmonyOS开发之自定义构建函数
UI元素复用机制@Builder,该自定义组件内部UI结构固定,仅与使用方进行数据传递,开发者可以将重复使用的UI元素抽象成一个方法,在build方法里调用。@Builder通过按引用传递的方式传入参数,才会触发动态渲染UI,并且参数只能是一个。@Builder如果传入的参数是两个或两个以上,不会触发动态渲染UI。@Builder传入的参数中同时包含按值传递和按引用传递两种方式,不会触发动态渲染UI。@Builder的参数必须按照对象字面量的形式,把所需要的属性一一传入,才会触发动态渲染UI。
2024-09-13 21:10:33
916
原创 HarmonyOS ArkUI 构建布局
父容器尺寸确定时,使用layoutWeight属性设置子元素和兄弟元素在主轴上的权重,忽略元素本身尺寸设置,使它们在任意尺寸的设备下自适应占满剩余空间。List除了提供垂直和水平布局能力、超出屏幕时可以滚动的自适应延伸能力之外,还提供了自适应交叉轴方向上排列个数的布局能力。使用栅格的默认列数12列,通过断点设置将应用宽度分成六个区间,在各区间中,每个栅格子元素占用的列数均不同。这里讲 Blank,作为空白填充组件,Text和 Toggle 两侧对齐,简单理解 就是溢出显示滚动条。
2024-09-13 15:36:00
990
原创 HarmonyOS开发之全局状态管理
一般的路由传参,适合父传子,单向或者双向绑定,但是一个状态被多个模块使用,组件没有关系的情况下就需要使用到全局状态管理。
2024-09-12 19:22:17
2069
原创 HarmonyOS开发之组件通信
Provide装饰的变量是在祖先节点中,可以理解为被“提供”给后代的状态变量。@Consume装饰的变量是在后代组件中,去“消费(绑定)”祖先节点提供的变量。简单解释,一般父组件在子组件中传递变量,子组件改变变量父组件是不会同步的,子组件中被@Link装饰的变量与其父组件中对应的数据源建立双向数据绑定。限制条件 @Prop装饰器不能在@Entry装饰的自定义组件中使用。但是使用@link装饰器,就会实现双向绑定,父组件的值也会同步改变。
2024-09-11 21:11:58
992
原创 HarmonyOS开发之模拟器地图点击无效问题
数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:当我们模拟器已经运行了,但是需求中需要引用地图,地图的点击事件无效,模拟器地图点击事件以及地拖拖拽无效,这个时候需要配置一下通过 chrome://inspect/#devices 通常用于远程调试移动设备上的 Chrome 浏览器。
2024-09-10 23:40:38
616
原创 HarmonyOS开发之生命周期
onPageShow:页面每次显示时触发一次,包括路由过程、应用进入前台等场景,仅@Entry装饰的自定义组件生效。onPageHide:页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景,仅@Entry装饰的自定义组件生效。可以在项目目录 entryability/EntryAbility.tes 看到整个应用的生命周期。onBackPress:当用户点击返回按钮时触发,仅@Entry装饰的自定义组件生效。
2024-09-09 22:43:44
674
原创 HarmonyOS云端开发(二)
根据上一章节写过的测试云端可使用,并且判断未登录则跳转登录页,已登录则跳转首页的逻辑,在pages目录下创建login.ets、register.ets、index.ets。云端开发不需要存储token,由提供的API统一验证,假设未登录则跳转登录页,已登录 跳转首页。导出一个json格式,一个js格式。将导出的表 放到ets/db目录下。以下为注册页面 会详细注释 看代码。
2024-09-07 23:43:34
607
原创 HarmonyOS云端开发(一)
在EntryAbility.ts中,使用cloud函数,通过SDK认证服务,判断是否能正常使用。在AppGallery Content中 下载一个文件放到ets下,pages同级目录。中创建自己的项目,并且复制包名。版本,使用5.0版本也可以。在name 中使用包名。
2024-09-07 23:09:28
948
原创 《里派物业》 物业小程序 物业系统 使用uniapp+Uview2.0,适配H5、安卓、ios、微信支付宝等小程序。包括物业缴费,家政服务,量房服务,商城,房源租售,工单管理,巡检等等
《里派物业》 使用uniapp+Uview2.0,适配H5、安卓、ios、微信支付宝等小程序。包括物业缴费,家政服务,量房服务,商城,房源租售,工单管理,巡检 审核中
2024-03-19 15:59:28
679
1
原创 Flutter环境配置全过程(包括javaJDK、flutterSDK、 AndroidStudio SDK安装以及中文语言包)所有有的没的坑都踩了一遍 呕~~~
Flutter环境配置全过程(包括javaJDK、flutterSDK、 AndroidStudio SDK安装以及中文语言包)
2023-03-22 17:29:00
2721
原创 uniapp 微信小程序发布版本提示珊瑚运营平台、uniAD 有新版本怎么解决?
uniapp 微信小程序发布版本提示珊瑚运营平台、uniAD 有新版本怎么解决?
2022-07-26 16:11:37
3922
4
原创 uniapp ios 改变系统背景色
fm:除了官方的一些说设置方法外 还可以用css 而且用了css 莫名其妙用什么方法都改变不了 最终要的就是z-index和fixed 那有人说了 渐变色咋办那就在这个页面最外层view 设置动态背景色.onReachBottomBg{ position: fixed; z-index: -1; // background-color: @titleBackground; background-color: #f2f2f2; top: 0; left:
2021-10-29 10:01:45
1762
原创 uniapp使用nvue 即基于 weex 改进的原生渲染引擎
fm:需求 做一个在目前的app 中做一个短视频模块 想到说组件的popup 用来进行y轴的滑动 会不顺畅 卡 所以用了nvue 我的理解就是 nvue 本质上跟vue的差距并不大 差别在于 在APP中随着业务的扩展 有些需要页面会数据多 或者功能要求多 这时候用 nvue 提高渲染能力 这个也只能在app 才会使用 api什么的有很多可以共用 同一路由 在APP端 会优先使用nvue 其他端会优先使用vue组件的使用 也需要去官网看下 有所不同 还有一点 就是在 使用nvue时 调起nvue的popu
2021-09-07 16:49:20
1149
原创 unipush app离线 在线 厂商推送消息
fm:app没有运行时 离线 也有收到推送消息 然后 就得用到厂商推送 一般的话 需要去配置 对应厂商的 appid然后选择UNIPush 透传intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=应用包名/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title=测试标题;S.content=测试内容;S.payload=test;end
2021-07-31 10:03:28
2991
1
原创 uniapp 自定义导航栏 动态显示或隐藏返回图标 以及buttons
fm:代码附上page.json { "path": "pages/suggest/suggest", "style": { "navigationBarTitleText": "总裁信箱", "enablePullDownRefresh": false, "onReachBottomDistance": 50, "app-plus": { "titleNView": { "buttons": [ { "t
2021-07-27 13:21:00
2903
原创 uniapp app 解决tabbar左侧滑动返回上个页面
fm:需求就是 打包成app 的时候 tabbar页面左侧滑动的话 就会提示再滑一次 就退出应用 我需要做的就是不退出页面 跳转到或者说返回到上级页面 个人需求 可以整体的去配置 也可以单页面配置 单页面配置 // 左侧返回上一页 onBackPress() { //#ifdef APP-PLUS uni.navigateTo({ url: '/pages/pagestore/tabbar/home'
2021-07-06 13:12:18
3875
1
原创 vue在日历中使用 tippyjs 来做悬浮弹框自定义插入html
fm: fullcalendar 官网中写的这个Tooltip 我实在是没办法使用 之前悬浮弹框是获取事件的xy 坐标来实现的 但是有一问题 就是事件的边缘的xy 会时而能获取到 时而获取不到 就造成了弹框闪烁 然后用了tippyjs 还是比较好用的npm install --save tippy.jsimport tippy from 'tippy.js'//css根据需要去引入import 'tippy.js/themes/light.css';import 'tippy.js/an
2021-05-12 17:58:26
1136
1
原创 uniapp 微信公众号H5自定义分享
fm:首先 先看文档 https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#44然后 弄个公众号测试账号 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index然后 填一些信息然后 就是在页面进来时 先去wx.config debug开启确认成功之后 再去做分享啊 摄像头
2021-05-08 17:55:04
2188
原创 vue 使用 FullCalendar 实现日程管理 外部拖拽 自定义事件 事件拖拽 缩放 悬浮框 分类
fm:用了两个星期研究这个全日历,具体的命令记不住了,就在packjson文件中导入这些东西 ,注意版本 全日历官网有不同的版本 同样 有些版本不同 就没办法使用 "@fullcalendar/core": "^4.4.2", "@fullcalendar/daygrid": "^4.3.0", "@fullcalendar/interaction": "^4.3.0", "@fullcalendar/list": "^4.4.2", "@fullcalendar/re
2021-04-20 14:33:23
4414
34
原创 移动端 输入框获取焦点 底部tabber被弹起问题
fm:首先我这边是自己把底部tabber搞成了一个子组件 通过路由的mate属性来判断跳转页面时,显不显示tabber 然后就是这样的 <!--引入底部导航组件 利用路由里面设置的meta参数来控制其显示--> <Tabbar v-show="TabShow" class="header" v-if="$route.meta.TabbarShow"></Tabbar>```return{ TabShow:true, docmentHeight:w
2021-03-03 17:40:08
237
3
原创 vue移动端使用 better-scroll 实现滚动
fm:首先npm install better-scroll --save然后在你需要的页面中使用这个插件的时候 会使页面上的点击事件失效,就需要加click: true这个是文档地址 还有很多好用的api 比如上拉刷新 下拉加载 https://better-scroll.github.io/docs/zh-CN/import BScroll from 'better-scroll' mounted() { setTimeout(() => {
2021-03-03 17:29:12
290
3
原创 vue3.0 使用sass 进行css编译 设置公共样式,
fm:先去引两个命令:注意版本不要太高 不然会编译错误npm install node-sass --savenpm install sass-loader --save我这里是这样的 你自己参考 "node-sass": "^4.14.1", "sass-loader": "^7.3.1",然后在vue.config.js;里面添加这些 这个data里面包含了两个文件 就是说可以编译这两个scss文件,多文件的 然后注意你的sass版本 字段名会不一样 css: {
2021-02-08 11:17:40
1354
原创 Vue 拖拽组件(实现上下拖拽) vuedraggable
fm:首先npm i -S vuedraggable这样可以实现一列按钮之间 可以进行上下拖拽 重新排版<template> <vuedraggable v-model="list"> <transition-group> <div v-for="item in list" :key="item" class="item"> <van-button>{{item}}</van-button>
2021-02-05 10:34:57
2087
1
原创 vue-count-to 数字滚动
fm:一切都是为了好看先引入 npm install vue-count-to <count-to :start-val="0" :end-val="business.alipayMoney" :duration="3600" class="card-panel-num"/> import CountTo from 'vue-count-to'大概就是这样的,数字会滚动增加...
2021-02-04 14:40:45
448
原创 vue使用 screenfull.js实现全屏(一般适用于后台管理)
fm:首先命令npm install --save screenfull然后在需要全屏的页面中引入或者把这个方法写成一个组件 然后引入 <van-button @click="button">点击</van-button> import screenfull from 'screenfull' button(){ if (!screenfull.enabled) { // 判断浏览器是否允许全屏
2021-02-04 13:52:24
856
原创 使用NProgress 实现进度条功能
fm:首先引入命令npm install --save nprogressrouter.js 引入import NProgress from 'nprogress'import 'nprogress/nprogress.css'```然后mian.js引入,其实这个是在路由中实现的,也可以在拦截器中使用这个 ,响应拦截中结束这个进度条```htmlrouter.beforeEach((to, from, next) => { NProgress.start() next
2021-02-03 18:56:25
219
原创 amfe-flexible+postcss-pxtorem实现移动端根据屏幕的宽度自适应
fm:首先我们先引入淘宝的amfe-flexiblenpm i -S amfe-flexible然后在main.js全局引入npm i -S amfe-flexible然后在vue.config,js文件中写入一下代码 解释一下 rootValue 是换算的值,selectorBlackList的作用是如果你引入了组件库同时也会改变组件库的样式,添加这个就是为了让它忽略第三方插件库 ( “van-” 就是以van开头的组件,其他组件库同样这样写 ok 结束下班)module.e
2021-01-27 18:30:58
809
4
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人