- 博客(62)
- 资源 (2)
- 收藏
- 关注

原创 在mac上使用android模拟器通过chrome调试webview内web页面
之前一直使用备用android机在做调试,这次正巧备用机坏了,临时装了个android模拟器来做调试,发现比用真机更方便现在在mac上可以很方便的通过android模拟器来直接调试webview中的web页面,各种应用比如钉钉内的web我们这里就以钉钉内的应用页面来举例
2020-11-30 16:51:19
2482
原创 记录一个npm link 404的问题
原因是因为我在2个不同的vscode的cmd里分别执行了创建link和link到package。安装本地插件调试,该插件未发布到私库。必须在一个bash里执行完毕。第一部正常操作,没有问题。
2023-11-20 13:16:01
309
原创 如何解决 “Component cannot be used as a JSX component“
在tsconfig.json中加入以下代码,将依赖指向项目里的node_modules。原因是react版本与@types/react版本不一致导致的,改完后代码大概是长这样的。
2023-09-13 10:54:21
3786
3
原创 VUE 动态组件 Cannot read property ‘$createElement‘ of undefined [问题已解决]
VUE 动态组件 Cannot read property '$createElement' of undefined 问题解决
2022-09-13 11:27:07
1702
原创 HbuildX打h5包/web2app包注意事项
#HBuild打h5包/web2app包注意事项1.资源文件必须是相对路径例如vue.config.js2.如果涉及路由,必须是单机支持的类型,例如:vue中,不能是用history,必须用hash模式3.如果用真机调试,必须打基座包4.如果Hbuild编译调试无法认到真机,通常是权限问题,多插拔几次,选到文件传输模式,并启用开发者选项5.认不到真机可以先用基座包安装一次,然后打开基座包的app再插拔usb线,然后就能看到真机选项...
2022-06-07 16:33:37
552
原创 git commit到错误分支的处理
在未同步到服务器之前,发现git commit错误可以在保存本地内容的情况下进行修复方法1直接新建一个分支,例如dev_xxxx回到提交错误的分支上,执行#回退到上个版本,将上个版本到回退间的文件保留在暂存区,切换分支后,暂存区文件会丢失git reset --soft HEAD~ 然后切换到dev_xxxx,直接push即可,回到master会发现所有改动都已复原方法2#回退到上个版本git reset HEAD~ --soft#暂存未提交文件git stash#切换(或新建)
2021-08-13 15:07:47
1922
原创 vue3 直接获取 app.config.globalProperties.x 的方法
假设我们在main.js中定义了一个全局方法//main.js app.config.globalProperties.$hello = name => { console.log('hello ' + name) }在其他页面中调用该方法//other.jsimport { getCurrentInstance } from "vue";const { appContext } = getCurrentInstance();const callHello = ()
2021-07-05 10:02:43
7327
3
原创 Vue3+Vue-Router+Axios+Vite工程化的一些实践
Vite工程化的一些实践px2viewporteslint,prettiervant-ui的按需加载环境变量vue-router+axios 未登录路由拦截跳转登录页html模板增加vite环境变量尾声px2viewportvite自带postcss编译安装postcss-px-to-viewport插件yarn add postcss-px-to-viewport --devpostcss.config.jsmodule.exports = { plugins: { 'postc
2021-05-25 09:40:14
1063
原创 vue最简单的递归遍历组件
今天同事问我,vue里递归组件要怎么写,随手写了一个小demo.loopItem.vue<template> <div v-if="data"> {{ data.name }} <div style="padding-left:10px" v-if="data.children"> <loop-item v-for="(item, index) in data.children" :key="index" :data="item"
2021-04-15 16:26:42
1496
原创 Vue中Neditor实现字数统计相关回调
Vue版本Neditor传送门参考neditor.all.js第15184行,可得知有字数统计事件UE.plugins["wordcount"] = function() { var me = this; me.setOpt("wordCount", true); me.addListener("contentchange", function() { me.fireEvent("wordcount"); }); ...参考32153行,有字数统计超出事件var co
2021-02-20 09:35:50
375
原创 ios下contenteditable无法出现光标打字问题修复
需要在该元素上添加以下css.class[contenteditable] { -webkit-user-select: text; user-select: text;}
2021-01-22 16:28:45
905
原创 vue文本编辑器 div[contenteditable]
标题写的比较拗口,估计被语文老师看到会被打死vue组件化特性:支持placeholder支持与fastclick插件共存,如果不需要,可以去掉needsclick这个class支持v-model支持readonly支持任意数量个实例支持移动端换行直接上代码:div-editor.vue<template> <pre :id="`divEditor_${id}`" :ref="`divEditor_${id}`" :placeholder="
2021-01-05 16:53:23
875
原创 纯js弹幕效果,vue可用
基于张鑫旭的使用canvas实现和HTML5 video交互的弹幕效果源码改造效果区别去掉了与视频的绑定,根据自然时间来推送弹幕进度,比较适合年会现场等大屏静态互动场景,支持vue直接使用使用方式引入canvasBarrage.jsimport canvasBarrage from "@/tools/canvasBarrage";// 弹幕数据var dataBarrage = [ { value: "speed设为0为非滚动", speed: 0, }, {.
2020-12-11 16:18:28
507
原创 前端开发工作中对于一些非技术问题经验总结
1.按时归档接口文档或在接口内完整注释接口文档很多时候开发流程都是不完美的,比如会存在接口对接只给到部分文档,只能边写边开发,这时候由于后端持续更新文档(doc/swagger/甚至是通过聊天),接口文档会散布的到处都是,这时必须在一个统一的地方归档所有接口的文档,以备不时之需我的做法是在每个项目中,维护一个文件夹/service,所有的接口按页面功能划分为功能名Service.js,并在接口的注释中同步该完整的接口文档当后续有修改,或者项目需交接时,无需另外起文档,直接看代码注释就可以,十分之方便
2020-09-23 17:46:39
459
原创 gulp 保持任意目录结构复制文件
直接上代码了,请根据自己的需要修改const { src, dest, series } = require('gulp')const path = require('path')const build_dir = './dist'const rootPath = 'pdfh5'function copyToDist () { return src(['css/**', 'js/**','index.html']).pipe( dest(function (file) {
2020-09-21 16:00:52
516
原创 快速扁平化,反扁平化任意嵌套层级JSON
//反扁平化JSON.unflatten = function(data) { "use strict"; if (Object(data) !== data || Array.isArray(data)) return data; var regex = /\.?([^.\[\]]+)|\[(\d+)\]/g, resultholder = {}; for (var p in data) { var cur = result
2020-08-06 15:57:20
682
原创 修复swiper.js抖动问题
解决方案关闭freeModeMomentumBouncevar mySwiper = new Swiper('.swiper-container',{freeMode : true,freeModeMomentumBounce : false,})
2020-07-06 15:46:50
1639
原创 各种关闭eslint方法总结
1、package.json关闭eslint直接注释掉package.json文件中eslint的配置 "eslintConfig": { "root": true,////此项是用来告诉eslint找当前配置文件不能往父级查找 "env": { "node": true//此项指定环境的全局变量,下面的配置指定为node环境 }, "extends": [// 此项是用来配置vue.js风格,就是说写代码的时候要规范的写,如果你使用vs-code我
2020-06-29 17:18:23
75567
7
原创 git 报错 error: RPC failed curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)git config --global http.version HTTP/1.1 # 也可能是数据文件太大,传不过去git config --global http.postBuffer 157286400参考引用:https://stackoverflow.com/questions/59282476/error-rp
2020-06-23 12:24:09
6550
1
原创 编程专用字体,在VSCode使用JetBrains Mono
JetBrains 公司 最新出了一个字体 JetBrains Mono,据称是专为改善看代码体验而生,用了一下发现确实还不错,对符号和小写l之类的区分确实有优化但是官方的文档只提到了怎么在IDEs中安装,如果你使用的是vscode之类的其他编辑器,只提供了一个通用的说明,具体怎么安装自己要琢磨了1.下载字体这一步相信大家都没什么问题,下载地址请直接前往官方download下载:传送门2....
2020-03-09 14:17:32
29201
7
原创 IOS中使用Date格式化日期时正确操作
原因是IOS的Date对象只接受/作为日期的分隔符,例如:new Date('2020.2.2').getTime() //ios中NaNnew Date('2020/2/2').getTime() //ios中正常返回值比较好的解决办法是直接使用类库来代替原生的Date对象,比如dayjs等,如果对应用大小有严格限制,那只能在赋予对象参数的时候多注意一些了...
2020-03-04 14:39:50
539
原创 移动端 border-radius 绘制圆点不够圆 如何解决
在做项目中,经常会遇到用css绘制像素小圆点的需求,如下代码.dotted{ width:4px; height:4px; border-radius:50%; background:red;}在一般情况下,这种代码是没有问题的,但是如果你使用了px2rem之类的插件,就会发现在移动端上的圆点有的大,有的小.十分的难看个人猜测原因是因为转换工具转出来的单位都是带小数点的,在css...
2020-02-14 12:41:25
3190
原创 同域名 http站点调用https接口 跨域问题
错误今天有个项目部署时碰到个怪问题,记录一下业务场景是一个前后分离的项目,由不同的部门开发在部署时,前端部署在 http://a.com/a 后端部署在 https://a.com/b预期调用接口时是不会跨域的,但是实际请求时出现了跨域问题options请求发送并返回200 ok,但后续post请求无法正常提交询问后端表示已经添加了支持跨域的代码,并且也支持options请求,能确定不...
2019-12-20 14:09:45
6100
转载 更改eslint报错配置
1、关闭eslint直接注释掉package.json文件中eslint的配置就可以了(以下是vue-cli的默认配置) "eslintConfig": { "root": true,////此项是用来告诉eslint找当前配置文件不能往父级查找 "env": { "node": true//此项指定环境的全局变量,下面的配置指
2019-10-18 16:31:44
605
原创 修复钉钉小程序 iconfont在android客户端无法正常显示
文章目录问题原因解决方案1.使用base64内联字体文件2.使用https路径的字体文件问题之前发过一篇教程:如何在钉钉小程序使用iconfont在项目开发完成后,测试时,发现在android上iconfont不会生效原因在请教了钉钉的大佬后,得出原因,低版本android他不支持woff2格式的字体,必须要使用woff格式字体,由于从默认iconfont网站上下载来的字体,woff2排...
2019-10-18 16:12:45
3874
1
原创 全平台通用中文字体设置 font-family css 2019
兼容windows,macbody{ font-family: Georgia, "Times New Roman", "Microsoft YaHei", 微软雅黑, STXihei, 华文细黑, serif;}
2019-09-11 17:29:22
3488
原创 VSCode + Vue + TypeScript 格式化后完美通过lint检查
打开VSCode插件中心,安装Prettier - Code formatter和Prettier-Standard - JavaScript formatter选择首选项->设置,搜prettier勾选Prettier: Single Quote 设置为true勾选Prettier: Jsx Single Quote 设置为true勾选Prettier: Semi 设置为true...
2019-09-03 17:06:01
1419
原创 Vue 创建基于数组的动态表单
在开发vue项目中,有时会遇到需要增删的列表表单,比如添加一堆人员信息,数据格式如下postData=[formData1,formData2,formData3....]这时可以直接创建一个基于数组的form对象,这样增减操作也可以基于数组的push和slice方法来实现export default{ const emptyPerson={ name:'', nameEn:'...
2019-08-29 16:42:00
1591
原创 钉钉小程序 H5应用开发 实用工具及常用技巧集合
文章目录获取钉钉版本,是否在钉钉环境下,移动端还是PC任意url在钉钉pc侧边栏打开隐藏右上角按钮失效问题的处理移动端网页真机调试,RC版钉钉下载获取钉钉版本,是否在钉钉环境下,移动端还是PC// 19年的官方文档里已经没有了,但是dd.pc,dd.ios和dd.android还是可以用的,后续稳定性不保证window.ddUA = { isPc:dd.pc,isIos: dd.ios, i...
2019-08-29 15:27:52
14806
4
原创 使用virtualenv创建python虚拟环境
文章目录安装 virtualenv创建虚拟环境激活虚拟环境退出虚拟环境安装 virtualenvpip3 install virtualenv #安装后的路径应该是 /usr/local/python3/bin/virtualenv#建立个软连接,如果不想做这一步,直接通过/usr/local/python3/bin/virtualenv的方式来调用ln -s /usr/local/py...
2019-08-26 16:26:51
380
原创 contos7 配置 python3环境 支持微信公众号开发
前言刚学python,百度云买了个云主机,系统选了contos7 发现默认预装的是python2,但项目的依赖环境是python3,所以要在不影响python2使用的情况下,配置python3,需要用到虚拟环境virtualenv,网上查资料也踩了不少坑,把配置的过程记下来,方便记忆1.安装python3新机器上来啥都没,只有yum,下载编译依赖包(没错,需要自己编译)yum instal...
2019-08-23 17:53:52
248
原创 scss border1px 懒人生成器 支持混淆 @mixin
适用于scss的border1px优点使用@media screen方式直接生成class,不占用伪类位置,无需配置loader(当然基本的css-loader和scss-loader还是要的).支持生成任意名字,颜色(#和rgba)和线条类型的mixin,通过@include 使用,方便灵活,生成的css冗余小,scss热更新模式下编译速度快.缺点需要在html中手动加上生成的clas...
2019-08-20 17:19:38
1538
原创 用Promise异步加载其他js,比如百度地图等
前言在开发一个Vue项目过程中,碰到只有一个模块需要调用BaiduMap,在index.html中引入BMap成本太高,所以需要实现一个异步加载百度地图的方法,网上查了下,发现已经有很多相关的代码了,但总有一点点问题,比如BMap not defined,或者再次进入后Bmap失效之类的…这里分享一个可以稳定运行的Bmap,import模块化引入,即开即用bmap.jslet _promis...
2019-05-17 16:43:36
1188
3
原创 支付宝/钉钉小程序 mini-ddui swipe-action 解决滑开时组件内可点击的问题
前言在使用钉钉自己的mini-ddui时,发现swipe-action组件有个坑,swipe-action左右滑动时无法禁止组件本身被点击,导致滑动时如果组件内元素可以点击容易误操作用户体验很差.在查看了官方文档后,发现并没有给出什么解决办法,so…只能把官方库的组件魔改了一下,改的一般,凑合用吧思路1.给swipe-action组件增加一个onSwipeEnd的钩子2.当手放开时判断当...
2019-05-08 09:32:31
5498
原创 钉钉小程序 E应用生成带参数二维码或链接
E应用生成预览调试及生产带参数二维码或链接点击预览生成二维码,点击下方的查看构建日志,会弹出一个log框,等生产完毕后,找到里面的query和data字段,把他们拼起来,组成类似如下的URL:dingtalk://dingtalkclient/action/open_micro_app?miniAppId=xxxx&version=xxxx&source=DEBUG&a...
2019-04-15 14:55:43
56562
1
转载 js 数组转JSON树
var nodes = [ {"id":2,"title":"第一级1","parentid":0}, {"id":3,"title":"第二级1","parentid":2}, {"id":4,"title":"第二级2","parentid":
2019-04-03 17:01:13
763
原创 解决移动端better-scroll+vue-awesome-swiper,长按拖动触发回弹特效时闪屏
如何解决弹性better-scroll+vue-awesome-swiper一起使用,在touchmove时scroll触发弹性特效,swiper会产生抖动类库环境vuebetter-scrollvue-awesome-swiper复现要求有个支持scroll到边界支持弹性回弹效果的类库,比如better-scroll轮播图我用的是vue-awesome-swiper复现该问题的伪...
2019-04-03 16:58:42
2621
DingTalk_v4.0.0-RC.117.exe.zip
2019-08-30
dingtalk-4.5.8-rc.apk.zip
2019-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人