- 博客(91)
- 收藏
- 关注
原创 Android平台签名证书
Android应用打包发布需使用数字证书签名。首先安装JDK环境并配置系统变量,然后通过keytool命令生成.keystore证书文件,设置别名、有效期(建议100年)及开发者信息。证书生成后,可使用HbuilderX云打包工具,上传证书文件完成APK签名打包。整个过程免费且无需审批,关键步骤包括环境配置、证书生成和云打包操作。
2025-07-25 10:10:03
857
原创 vscode插件构建与打包安装
摘要:本文介绍了使用微软官方脚手架搭建VSCode插件框架的步骤,包括安装生成器、配置package.json中的activationEvents和contributes等关键项,以及extension.js中插件激活与命令注册的实现方法。同时提供了打包(vsce package)和安装插件的流程,并指出常见问题如README.md编辑警告和--no-dependencies参数导致命令失效的解决方案。文章参考了VSCode插件开发中文文档,为开发者提供了从零开始创建基础VSCode插件的完整指南。
2025-07-25 09:59:00
931
原创 Windows本地部署DeepSeek
本文介绍了Ollama、Docker和OpenUI的本地私有化部署流程。首先下载Ollama安装包并通过命令行指定安装目录,测试成功后安装deepseek-r1:1.5b模型。接着配置Docker环境,包括启用Windows功能、安装Docker Desktop并设置镜像加速。最后通过Docker拉取OpenWebUI镜像并运行容器,在本地3000端口搭建可视化界面。完成部署后即可通过浏览器访问本地AI服务。整个流程包含详细的操作步骤和常见问题解决方案。
2025-07-24 18:10:52
589
原创 微信小程序批量上传代码实现
需要一套代码编译多个小程序,前端需要一个个将代码上传是从微信开发者工具中抽离的关于小程序/小游戏项目代码的编译模块。开发者可不打开小程序开发者工具,独立使用 miniprogram-ci 进行小程序代码的上传、预览等操作。为了提高小程序上传代码效率,编写批量上传微信小程序代码脚本。当然,如果是定制化开发的,不需要走这个批量上传。使用 miniprogram-ci 前应访问"
2025-07-24 18:01:39
1110
原创 uniapp实现国际化语言
字段名称App-iOSosLanguagezh-CNzh-Hans-CN其他:hostLanguage 宿主语言(仅 UniMPSDK 支持,就是只支持小程序)
2024-12-13 19:13:32
2335
原创 uni-app开发App注意事项
个人选择考虑:1、vue2由于官方不维护了,所以uniapp也不维护了。2、vue3使用proxy,不支持ios9。3、目前插件市场中 vue2开发的插件占比更大。4、如果app页面较多,需要开启分包,但是目前uniapp在vue3下,app分包不生效。结论:所以选择用vue2版uniapp开发,但是需要注意,不能使用cil创建项目,否则在打包的时候会白屏。要通过HbuilderX创建项目。
2024-12-13 14:27:30
600
原创 nuxt asynData Cannot read properties of undefined (reading ‘_isDestroyed‘)
nuxt asynData Cannot read properties of undefined (reading '_isDestroyed')Failed to execute 'appendChild' on 'Node': This node type does not support this method.
2022-07-11 15:25:30
2057
5
原创 vue-cli3升vue-cli4失败问题解决
今天遇到一个问题 想要把本地的脚手架升级到4.5.6版本以上的来体验一下vue3的时候发现脚手架怎么升级都不行开始执行的命令npm uninstall -g vue-clinpm install -g @vue/clivue -V 然而查看当前版本 一直显示的是旧版本把vue/cli uninstall了再重装 也依旧是这样的问题 重启试试 也发现版本还是旧版本问题解决:1、检查node版本 无问题2、怀疑是缓存的问题 到C盘的user/xxx/AppData/Roa.
2021-08-11 10:02:41
370
原创 git 常用方法
1.冲突的产生当我们向远程git服务器提交某一个文件的修改时,恰巧这个文件相同的修改地方其他人也有修改,并且已经提交到服务器,这时冲突就产生了. 通常,当我们合并两个相同的地方都有修改的分支时,都会产生冲突.2.文本文件冲突解决出现冲突时git不知道如何自动合并,需要我们解决冲突手动合并. 如果是文本文件,git会在有冲突的地方作上标记(如 HEAD >>> ==== <<< HASH_ID等),标记哪些是当前分支的修改,哪些是其他分支的修改.参考这些标记,解
2021-07-12 14:31:10
429
原创 h5下echarts roam不生效
背景:使用uni-app开发h5,其中一个页面含有echarts-关系图,需要可拖拽与缩放问题:在h5下不能拖拽与缩放,在pc下正常问题排查:1、官网模板代码在h5下能拖拽与缩放 => 怀疑是echarts版本问题 更换为模板代码使用的版本 =>依旧不生效2、将相同的代码放在新开的html页面 能拖拽与缩放 => 不是代码的问题3、上网查找解决办法 发现https://ask.dcloud.net.cn/question/88473原因:echarts自带运行环境的
2021-05-13 12:27:00
1523
9
原创 H5-点击保存图片
首先,写在开头,如果有产品要求h5点击按钮实现保存的,那么如果要兼容微信浏览器的 可以提出改需求了。参考:https://zhuanlan.zhihu.com/p/260941705项目技术栈:uni-app查了各论坛和uni-app的api、微信的sdk 发现很多都实现:save(picUrl) { var a = document.createElement("a"); //创建a 标签 a.href = picUrl; // 把图片路径赋到a标签的href
2021-04-07 15:30:07
2850
原创 互联网协议(Internet Protocol Suite)
互联网实现 可以分为五层。互联网的每一层,都定义了很多协议。这些协议的总称,就叫做"互联网协议"。物理层维基百科解释:在局部局域网上传送数据帧,它负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机接口卡等。电脑们要连起来组个局域网通信,会用光缆、电缆、双绞线、无线电波等。规定了电气特性,负责传送0和1的电气信号。数据链路层维基百科解释:负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成信息框(Data Frame)。数据链表头(DLH)
2021-02-04 09:21:06
897
原创 原生js实现 兼容常规pc、大屏、移动端 适配方案
项目背景:1、设计稿1)pc设计稿为19201080的可视化大屏,16:9比例设计2)大屏设计稿35841152的可视化大屏,28:9比例设计3)移动端设计稿 宽750的可视化大屏2、适配不同屏幕1)pc要兼容不同分辨率下的屏幕,注意这里说的是往下兼容 兼容1k以下的 不能出现滚动条 使用scale2)大屏比例为28:9,在项目开发中,可以按照1680:540 达到28:9的效果 不能出现滚动条 使用rem3)移动端兼容,以750为标准实现适配 使用rem3、实现思路:1、pc可以根据v
2020-12-21 10:24:32
4680
原创 深拷贝与浅拷贝
2、深拷贝与浅拷贝看这一篇的时候建议先看一下上一篇关于数据类型的文章。直接赋值直接赋值:把对象a赋值给对象b,实际上是把对象b的地址指向对象a的对象。a与b的地址指针一样,指向同一个对象,所以修改b时,a也会跟着发生改变。注意,修改b的无论是对象属性(引用数据类型)还是非对象属性(基本数据类型),a都会跟着发生改变。let a = { name:'a', arr:[1,2] }let b = a;b.name = 'b';console.log(a.name); // bb.arr
2020-10-12 09:50:32
525
原创 基本数据类型与引用数据类型
1、基本数据类型与引用数据类型在谈深拷贝与浅拷贝的时候,我们先来谈谈JS的数据类型,这对接下来了解深拷贝浅拷贝起到一定的作用。栈内存栈是自动分配相对固定大小的内存空间,而且由系统自动释放的。栈是线性结构,后进先出。基本数据类型:Null、 Undefined、Number、String、Boolean、Symbol(ES6)。基本数据类型存放在栈内存中,占据固定的大小空间。是直接按值存储的。因为内存空间大小确定且由系统自动分配和释放,所以内存可以及时回收,相较堆可更容易管理内存空间。堆内存
2020-09-11 15:50:37
304
原创 element-ui 遇到过的bug
2020/09/091、级联选择器高度问题:解决办法修改样式:(使用px也可以 ).el-cascader-menu { height: calc(30vh); width: vw(220);}2、日期选择器位置偏移问题正常情况出现偏移 疑似日期选择器占位解决办法:修改代码,将每个日期选择器都先渲染出来,然后使用v-show控制。一定要使用v-show而不能使用v-if,否则还是会出现日期选择器重新渲染位置偏移的问题。-----未完待续...
2020-09-09 10:24:47
725
原创 React学习日志5
九、状态提升通常,多个组件需要反映相同的变化数据。这时建议将共享状态提升到共同的父组件中。let scaleNames = { celsius: "Celsius", fahrenheit: "Fahrenheit"}// 摄氏度与华氏度转换函数function toCelsius(fahrenheit) { return (fahrenheit - 32) * 5 / 9}function toFahrenheit(celsius) { return (celsi...
2020-08-26 08:48:31
232
原创 React学习日志4
五、事件处理1、react事件处理与DOM相似但语法有不同React 事件的命名采用小驼峰式(camelCase),而不是纯小写。 使用 JSX 语法时你需要传入一个函数作为事件处理函数,而不是一个字符串。// 传统html<button onclick="activateLasers()"> Activate Lasers</button>// react<button onClick={activateLasers}> Acti..
2020-08-20 09:28:04
271
原创 react学习日志3
四、state与生命周期1、什么是statestate 与 props 类似,但是 state 是私有的,并且完全受控于当前组件。属性props是外界传递过来的,状态state是组件本身的,状态可以在组件中任意修改。组件的属性和状态改变都会更新视图。2、react组件的生命周期每个组件都包含“生命周期方法”,你可以重写这些方法,以便于在运行过程中特定的阶段执行这些方法。1)挂载当组件实例被创建并插入 DOM 中时,其生命周期调用顺序如下constr...
2020-08-12 13:49:06
245
原创 react学习日志2
一、JSX1、什么是JSXconst element = <h1>Hello, world!</h1>;ReactDOM.render( element, document.getElementById('root'));这个有趣的标签语法既不是字符串也不是 HTML。它被称为 JSX,是一个 JavaScript 的语法扩展。我们建议在 React 中配合使用 JSX,JSX 可以很好地描述 UI 应该呈现出它应有交互的本质形式。JSX 可能会使人联想
2020-08-10 10:38:57
189
原创 react 学习日志1
1、react环境搭建安装Node >= 8.10 和 npm >= 5.6在终端输入:npx create-react-app my-appcd my-app npm start // 运行my-app2、react是什么?React 是一个声明式,高效且灵活的用于构建用户界面的 JavaScript 库。使用 React 可以将一些简短、独立的代码片段组合成复杂的 UI 界面,这些代码片段被称作“组件”。3、井字棋的棋盘根据https://rea.
2020-08-05 14:58:06
398
原创 echatrs-geoJson
通过阿里云datav的地图选择器获取geoJsonhttp://datav.aliyun.com/tools/atlas/#&lat=31.769817845138945&lng=104.29901249999999&zoom=4查看效果http://geojson.io/
2020-07-15 15:51:24
181
原创 vue-无缝滚动+高亮某一行
vue实现无缝滚动首先一开始参考了https://www.cnblogs.com/liuerpeng/p/11724257.html但是实现的效果会出现一点点的停顿后面决定使用插件vue-seamless-scrollnpm install vue-seamless-scroll --save在main.js里面import scroll from 'vue-seamless-scroll'Vue.use(scroll)页面上<vue-seamless-scr.
2020-07-13 16:44:33
1420
原创 echarts-series中label的backgroundColor无效
注意,如果不定义rich属性,则不能指定width和height。
2020-07-11 09:15:26
5343
原创 webkit内核-滚动条样式修改,火狐-flex布局下overflow不生效解决,滚动条样式隐藏
针对webkit内核的浏览器(谷歌、ie、Safari等):实现效果:(利用border实现边距)使用伪类改变滚动条样式1. ::-webkit-scrollbar 滚动条整体2. ::-webkit-scrollbar-thumb 滚动条的方块3. ::-webkit-scrollbar-track 滚动条的轨道4. ::-webkit-scrollbar-button 滚动条的两端按钮5. ::-webkit-scrollbar-track-piece 内层轨道,滚动
2020-07-08 15:00:02
5046
原创 vue+elementUI-实现导入导出excel
导入-实际上是上传功能,使用el-upload实现importFile.vue:<template> <div class="import"> <el-upload ref="upload" :headers="header" :action="uploadUrl" :data="uploadData" :on-error="handleError" :on-success="hand
2020-07-06 16:50:02
2166
1
原创 vue-引用两个相同的子组件,页面上的值不更新问题 --key的作用
在父组件中同时调用两个子组件,场景如下:<component :data="dataOne" v-if="isShow"></component><component :data="dataTwo" v-else></component>此时会发现,当子组件挂载之后,当切换组件间的显示时,每次进入beforeUpdate生命周期打印可以发现内部的属性数据是更新了,但是页面上的数据并没有更新到。解决办法:<component :...
2020-06-13 11:26:55
5382
原创 echarts 生成的canvas只有100px的问题
在开发中遇到一个问题,使用echarts的时候,生成的canvas宽度不是实际写入的宽度后面发现 ,因为使用了el-tabs,存在echarts的tab页在刚开始处于display:none,所以echarts拿不到页面的宽度解决办法:在页面切换的时候 调用resize方法 self.myChart.resize("auto", "auto");...
2020-04-27 16:57:41
2051
原创 简单说说typescript
1、什么是TypeScriptTypeScript(JavaScript that scales.) TypeScript是JavaScript类型的超集(超集就是ts包含js而且有js没有的东西,意味着js语法也能在ts中运行),它可以编译成纯JavaScript。TypeScript可以在任何浏览器、任何计算机和任何操作系统上运行,并且是开源的。2、为什么用TypeS...
2020-04-13 09:53:31
506
原创 node 单元测试
1、rebuild分支下新增目录结构血的经历 不要把测试的node模块文件夹命名成node_modules 在测试覆盖率的时候会提示: 意思是没有收集覆盖信息,退出没有写入覆盖信息。然后无法收集测试覆盖率。所以现在改成modules了改一下package.json"node": "mocha .\\node_test\\test","coverag......
2020-04-13 09:52:20
1823
2
原创 WePY1 vs WePY2
1、什么是WePY微信小程序组件化开发框架WePY。将 Web App 和小程序进行对比。Web App 和小程序在功能上类似, Web App 在开发的时候,可能使用 Vue.js 作为其核心库,用 Webpack 进行打包。在微信小程序中,大家可以简单的将 WePY 理解为 Web App 里的 Vue.js + Webpack 的合体。官方介绍:WePY (发音: /...
2020-04-13 09:50:04
1421
原创 No coverage information was collected, exit without writing coverage informa
使用istanbul进行测试覆盖率的时候发现没有收集覆盖率的信息在网上查了一下发现出现问题别人说是因为很可能因为istanbul的版本过低或者其他的情况但是我的情况是 执行测试覆盖的路径下含有node_modules 导致不收集覆盖率信息将目录改成这样 成功收集...
2019-12-27 13:47:18
852
原创 E:\xxx>gulp Local modules not found in ....
在项目下执行npm install --save-dev gulp作为项目的开发依赖(devDependencies)安装 再gulp
2019-07-15 10:27:44
3528
原创 nginx bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket
80端口果真被占用。一开始想着在nginx.conf里面修改端口号,但是发现出现下面的错误:nginx: [error] OpenEvent("Global\ngx_reload_8404") failed (2: The system cannot find the file specified)Nginx 尚未启动导致,需要执行 start nginx 命令开启Nginx执...
2019-06-04 16:26:51
2343
原创 ios字体变大
-webkit-text-size-adjust:none;作用,禁用Webkit内核浏览器的文字大小调整功能,以实际大小显示,部分浏览器不支持小于12px的字号将使用12px字体。
2019-06-04 16:26:28
719
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人