自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 手动实现uni-app可用的new URL

uni-app中没有URL,手动实现一个可用的URL

2023-09-05 14:04:07 1007

原创 uni-app集成mui-player

uni-app集成mui-player

2023-09-05 14:02:01 1455 1

原创 某某某小说app接口抓包分析

某某某小说app接口抓包分析

2023-07-31 19:54:56 780

原创 一个不常见的开发问题,你遇到过吗?

如果公司有开发国际化的业务,某些国家书写的方向是从右往左的,不同于我国古代的写法,他们只是布局方向从右往左,但是文字还是从左往右写的。使用rtlcss,他的实现思路就是配置rtl属性使用,将页面上的left相关属性都转为right属性,核心思想就是某些属性的全局转换。在 HTML5 中, dir 属性可用于任何的 HTML 元素 (它会验证任何HTML元素。在 HTML 4.01 中, dir 元素不能用于: ,其实,这些头疼的问题是有成熟的解决方案的。dir 属性规定元素内容的文本方向。

2023-07-03 17:42:58 118

原创 一道前端this面试题

注解部分请查看原文const obj = {log () {obj.log()fn() // 0arr // 2。

2023-07-03 17:38:27 40

转载 【转载】精读《SolidJS》

原因在于,SolidJS 收集所有用到了 count() 的依赖,而 doubleCount() 用到了它,而渲染函数用到了 doubleCount(),仅此而已,所以自然挂上了依赖关系,这个实现过程简单而稳定,没有 Magic。而 SolidJS 本身渲染函数仅执行一次,所以不存在 React 重新执行函数体的场景,而 createSignal 本身又只是创建一个变量,createEffect 也只是创建一个监听,逻辑都在回调函数内部处理,而与视图的绑定通过依赖收集完成,所以也不受条件分支的影响。

2023-07-03 17:35:04 143

原创 【前端面试总结】vue、react、webpack、babel面试总结

nextTick 会在dom渲染之后被处罚,以获取最新的dom节点。// 简单的用v-show就行,稍微复杂的用keep-alive。监听引用类型,使用下面方法深度监听,但是拿不到oldVal。key,不能乱写,尽量不用index,不用random。mixin和组件可能会出现多对多的关系,复杂度较高。组件卸载时,解除事件绑定,销毁子组件,定时器等。组件渲染: 先子后父【子组件渲染完,才能挂载】需要根据数据,动态渲染的场景。// 每个组件只渲染一次,且不会销毁。复杂写法,常用,可以定义类型和默认值。

2023-07-03 17:29:54 630

原创 将毫秒数述转为时分秒格式

将毫秒数述转为时分秒格式

2022-08-29 15:48:51 209 1

原创 jsdelivr cdn大陆挂了不能访问替代方案

【查看原文】今天是2021.12.20,jsdelivr cdn大陆挂了不能访问了jsdelivr挂了,npm库替换如果你使用的是npm库,使用unpkg.com挂了!什么?unpkg太慢了?好吧,使用中国镜像unpkg.zhimg.com全局搜索cdn.jsdelivr.net/npm替换为unpkg.zhimg.comgithub库替换如果你使用的是github库,请看我这篇文章推荐几款免费且不限流量的全球CDN......

2021-12-20 17:03:37 9356 6

原创 项目中遇到的有趣的“BUG”,这样做比删库跑路更高明

项目中遇到的有趣的“BUG”,这样做比删库跑路更高明持续更新中,更多请 请移步这里问题1、条件判断当 a 不等于 1 或者 不等于 2 的时候, 执行一段操作// 这个条件 永真,有时候 一眼 还真看不出来if(a !== 1 || a !== 2) { // todo something}问题2:重写父方法问题// 组件特别多的时候,改一下 基类父组件 的方法,真的能查好久class Parent { todo1() { console.log('p 1')

2021-11-18 18:01:45 119

原创 vue3.x中vue4.x如何使用modules模块化

完整原文地址store/modules/a.jsexport default { namespaced: true, state: () => ({ }), getters: { }, actions: { async getData ({state, commit, dispatch, rootState}) { await ajax() ... } }, mutations

2021-11-15 17:59:20 1203

原创 vue的input输入框中截取字符串改变时不刷新问题

场景:input中value为金额类型的两位小数,当输入小数点后位数超过两个时,自动截取保留两位遇到的问题blur触发修改当首次输入时,没有问题,可以正常截取,当再次输入时,在当前值的后面继续输入,blur时,输入框中的值无改变原因分析:因为是在已有值后面追加输入,所以截取后的内容没有发生变化,所以输入框中值没有发生变化解决办法给input输入框添加一个key属性,每次修改值,即blur时 修改这个key值,达到重新渲染刷新的目的官方API知识点点击查看...

2021-11-15 17:50:45 1114

原创 uniapp的webview嵌套页面中的广告资源如何屏蔽

uniapp的webview嵌套页面中的广告,js文件、图片文件等如何屏蔽场景:webview嵌套了一个在线播放页面,但是播放页面中还有广告js,广告图片等解决方法:使用webviewObject的overrideResourceRequest实现// 获取当前页面 webviewcurrentWebview = this.$scope.$getAppWebview()// 需要屏蔽的资源路径列表const filterUrls = ['cnzz', 'umeng']con

2021-11-15 17:49:36 1162

原创 uni-app自定义tabbar导航栏

uniapp原生tabbar组件,性能非常好,但是自定义性很差自定义模拟tabbar页面优点是自定义性非常强,但是却存在严重的性能缺陷。现在提供一个解决方案,可以使用uni-app自带tabbar系统,保证性能的同时,又能尽情自定义tabbar导航栏自定义tabbar场景,不建议在一个页面内通过几个组件,用v-if/v-show切换去模拟各个页面,而应该使用uni-app自带的tabbar系统,同时隐藏原生的tabbar, 再引入自定导航栏,这样可以保证原有性能,同时又能自定义tabbar,思路如下:

2021-08-16 09:25:07 919

原创 uni-app手写签名

<canvas canvas-id="firstCanvas" disable-scroll='true' @touchmove='move' @touchstart='start($event)' @touchend='end' @touchcancel='cancel' @longtap='tap' @error='error'></canvas>点击查看JS代码

2021-08-16 09:23:01 272

原创 uniapp上传本地文件

uniapp如何将本地文件附件提交接口上传到服务器使用 plus.io.resolveLocalFileSystemURL: 通过URL参数获取目录对象或文件对象使用 plus.io.FileReader: 文件系统中的读取文件对象,用于获取文件的内容使用 FileReader 的 readAsDataURL: 以URL编码格式读取文件数据内容点击查看代码示例...

2021-08-16 09:21:24 2153

原创 使用plus.webview.create创建的webview锁嵌套的html页面如何与app进行通信

首先,在html页面中引用官方的SDK <script src="../js/uni.webview.1.5.2.js"></script>紧接着,监听UniAppJSBridgeReady,等待sdk加载成功,然后使用 uni的 api,一些api可以直接使用,一些需要 uni.webVuew.api 调用<script> document.addEventListener('UniAppJSBridgeReady', function() {.

2021-08-16 09:19:15 1520

原创 uniapp如何清理缓存和广告下载的apk安装包文件

uniapp加入了广告之后,点击广告下载的apk使应用占用的存储越来越高,这些文件如何删除。// plus.io.requestFileSystem 请求本地文件系统对象 // plus.io.PUBLIC_DOWNLOADS 应用公共下载目录,多应用时都可读写,常用于保存下载文件// 详细介绍请查看官方文档plus.io.requestFileSystem(plus.io.PUBLIC_DOWNLOADS, function(fs) { // 对应Android系统应用外部存储目录(通常为

2021-03-20 16:59:27 1815

原创 uniappd的web-view组件无法动态加载本地html文件的解决办法

uniapp中使用腾讯地图api,首先从接口获取到一些参数之后,需要通过src的地址将一些参数传递下去由于web-view只加载第一次的初始路径,当loc改变时,web-view中获取不到loc的改变,并不会再刷新首先在template中先写上html的本地路径<template> <view class="map-container"> <web-view :src="`../../hybrid/html/map.htmlloc=${JSON.stri

2020-12-01 11:52:31 3033

原创 react实现全屏预览功能

react 实现全屏预览功能,使用 h5 的requestFullScreen api查看代码示例

2020-10-22 18:01:00 1754 1

原创 ES2020新特性js运算符 ?. 、?? 、??= 解释说明

js运算符 ?. 、?? 、??= 解释说明?. 可选链运算符,检查每个级别,如果碰到的是 undefined 或 null 属性,直接返回 undefined,不会继续往下检查?? 空值合并运算符,仅在 左侧 是 nullish (null 或 undefined) 时,使用右侧的值??= 逻辑空赋值运算符 (x ??= y) 仅在 x 是 nullish (null 或 undefined) 时对其赋值查看代码示例...

2020-10-21 18:17:40 3006 1

原创 var a=1; var b=2和a=1和var a=b=1和var a=1,b=2的区别

查看全文var a=1; var b=2和var a=b=1和var a=1,b=2的区别function fn () { var a = 1,b = 2 var c = d = 3 e = 4}fn()console.log(a) // a is not definedconsole.log(b) // b is not definedconsole.log(c) // c is not definedconsole.log(d) // 3console.log(e) /

2020-10-18 04:16:14 1013

原创 控制文本的行数,末行超出显示省略号...

查看原文-webkit-line-clamp 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。为了实现该效果,它需要组合其他外来的WebKit属性。常见结合属性:display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。-webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。text-overflow,可以用来多行文本的情况下,用省略号“…”隐藏超出范

2020-10-10 14:40:27 159

原创 AdGuard过滤规则

主要对通用规则的补充,去网页广【/河蟹/】告,去视频广【/河蟹/】告,去启动广【/河蟹/】告,去app广【/河蟹/】告,以及处理一些通用规则的误杀,屏蔽常用国产浏览器的恶意注入,脚本解析目前适配:腾讯视频、爱奇艺、优酷, 有时间了再适配其他网站。说明:不可能满足所有人,不好用可留言提意见,或者不用就是,有能力就[自己写规则],拒绝BB!window系统上,如果想更好的过滤(视频)广【/...

2020-10-10 14:39:03 29115

原创 var a=1; var b=2和a=1和var a=b=1和var a=1,b=2的区别

查看原文var a=1; var b=2和var a=b=1和var a=1,b=2的区别function fn () { var a = 1,b = 2 var c = d = 3 e = 4}fn()console.log(a) // a is not definedconsole.log(b) // b is not definedconsole.log(c) // c is not definedconsole.log(d) // 3console.log(e) /

2020-10-09 10:15:16 592

原创 原生JavaScript实现查找汉字首字母

1、列出常用字的拼音(常用字列表来自网络)var pinyin = { a: '阿啊呵腌嗄吖锕', e: '额阿俄恶鹅遏鄂厄饿峨扼娥鳄哦蛾噩愕讹锷垩婀鹗萼谔莪腭锇颚呃阏屙苊轭', ai: '爱埃艾碍癌哀挨矮隘蔼唉皑哎霭捱暧嫒嗳瑷嗌锿砹', ei: '诶', xi: '系西席息希习吸喜细析戏洗悉锡溪惜稀袭夕洒晰昔牺腊烯熙媳栖膝隙犀蹊硒兮熄曦禧嬉玺奚汐徙羲铣淅嘻歙熹矽蟋郗唏皙隰樨浠忾蜥檄郄翕阋鳃舾屣葸螅咭粞觋欷僖醯鼷裼穸饩舄禊诶菥蓰', yi: '一以已意议义益亿易医艺食依移衣异伊.

2020-08-08 21:12:45 3847

原创 使用umijs实现登录鉴权功能

需求描述进入某一个页面,如果鉴权失败,则跳转到登录页面进行登录,登录成功,返回之前的页面实现方式umijs官方文档,在 .umirc.js 自定义路由的时候,添加wrapper,实现鉴权拦截然而折腾很久,还是没实现,于是用自己的方法实现实现分析首先写一个鉴权页面,鉴权成功加载页面,鉴权失败跳转登录页面,将这个页面包裹在项目的根组件外层import React from 'react'import PropTypes from 'prop-types'import { Red.

2020-07-16 23:39:04 6477

原创 前端面试之下划线转小驼峰

说明:写一个转换函数,把json对象的key值从下划线(Pascal)形式转为小驼峰(Camel)形式示例:convert({“a_bc_def”: 1}); // 返回 {“aBcDef”: 1}分析:此题的考点是replace方法,和正则表达式先看看replace方法,都知道replace方法有两个参数,第二个参数表示要替换为的字符串,但是没怎么详细用过,此题的考点即考察第二个参数为方法的用法先举个栗子,看看这个方法怎么用:var str = "a_bc_def"function toCa

2020-06-13 16:27:20 1912

原创 超详细介绍浏览器输入一个url地址后发生了什么

面试中经常有人会被问到浏览器中输入一个url后发生了什么,屡屡碰壁,答的不是面试官想要了解的,或者纯粹答非所问,查找资料也没有一个说的全面的,因为这里面涉及到了很多的东西,今天就好好的整理了一下这块涉及到的内容。整体步骤输入url组装协议,构成完整的url查找本地缓存发起请求dns解析浏览器dns缓存本地hostdns服务器服务器处理接收响应渲染数据步骤详解查看后续内容...

2020-05-31 13:33:28 1614

原创 AdGuard更多规则推荐

更过adguard规则推荐,来源网络,安全不知。请知悉。adguard推荐规则 | 点这里HalfLife,规则合并自 EasylistChina、EasylistLite、CJX’sAnnoyance 合并规则(几乎每天更新)https://gitee.com/halflife/list/raw/master/ad.txtcjx82630,cjxlist 国内备用地址CJ...

2020-05-07 13:32:09 28243

原创 AdGuard添加规则方法

推荐adguard规则 | 点这里手机端AdGuard添加方法点击下面链接跳转到对应位置普通规则添加方法DNS规则添加方法脚本添加方法开启过滤后网速慢的问题PS: 添加的是规则页面的链接地址,不是页面打开后的内容普通规则添加方法[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SLIUnHQ2-1588829386489)(htt...

2020-05-07 13:30:59 21058 2

原创 AdGuard推荐设置

推荐adguard规则 | 点这里AdGuard推荐设置,这是我自己的设置,仅供参考。没有选中的代表可选可不选没有列出的代表不选安卓版内容拦截 高品质过滤方式 拦截所有应用内的广告过滤器广告拦截 英语过滤器 移动广告过滤器 EasyList隐私 间谍软件过滤器 EasyPrivacy社交(有误杀,可不开启) 社交媒体插件过滤器 Fanboy...

2020-05-07 13:29:12 24249 3

原创 react+electron实现自定义右键菜单复制粘贴

react+electron实现自定义右键菜单复制粘贴,可以在 electron app 和 其他应用比如 word txt 之间自由复制粘贴。有啥问题欢迎到我的博客留言一起讨论首先上图看效果[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ltiPAxE7-1588134616832)(https://store.xuehuayu.cn/store/20200...

2020-04-29 12:33:16 2334

原创 解决Code 98: Valine 初始化失败,请检查 av-min.js 版本

[email protected]版本报错Code 98: Valine 初始化失败,请检查 av-min.js 版本的解决办法引用最新版本即可点击查看解决方法

2020-04-28 09:38:55 1799

原创 react+electron检测网络断开和重新连接

electron + react 如何实现网络断开、重新连接后刷新页面1、首先在新建一个html页面,页面中监听online和offline事件,当状态改变时,使用ipcRenderer将消息传递给electron的主进程<html><body><script> const { ipcRenderer } = require('electron')...

2020-04-27 10:08:57 2166 1

原创 umijs中如何引用svg图片

最近遇到需求在umijs中引用svg图片。下面说说实现方法。先看效果[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WQn5hMt3-1586361572751)(https://store.xuehuayu.cn/store/20200408/2020-04-08_215349.png)]分析查看umijs文档中,使用ReactComponent来引用sv...

2020-04-09 00:00:31 3876

原创 antd的select选择框选项水平横向排列

antd的select选择框选项如何水平横向排列?选项如何是图片?最近遇到需求select选择框选项和值为图片,且选项必须水平排列,项目用的是antd,索性就从修改样式入手改改antd先看效果分析antd的选项使用的是flex布局,其中默认样式使用的是flex-direction: column,也就是纵向布局,将其改为横向row即可查看实现方法相关链接antd的sele...

2020-04-08 23:58:12 4628

原创 antd的select选择框的值如何设置为图片

antd的select选择框选项如何水平横向排列?选项如何是图片?最近遇到需求select选择框选项和值为图片,且选项必须水平排列,项目用的是antd,索性就从修改样式入手改改antd先看效果分析查看antd的文档,使用optionLabelProp属性实现Select标签添加optionLabelProp属性,指定显示内容为label属性查看代码相关链接antd的se...

2020-04-08 23:56:22 2925

原创 react使用pdf和图片预览及遇到的一些坑

react中使用pdf和图片预览遇到的一些坑需求近期项目中新需求要用到pdf和图片的预览功能,由于项目时间较久,react用的是15.5.4版本,项目接口返回的数据是文件流。使用插件这里使用react-pdf插件和react-images插件因为react版本是15.5.4,所以不能使用最新版,这里使用的的是 [email protected],这个是3版本的最后一个版本ract-ima...

2020-04-03 22:33:25 6517

原创 如何固定table表格的列

title: 如何固定table表格的列date: 2020-03-21 01:51:29categories: 大前端tags: 原创我们经常会遇到table表格列很多,或者列中内容较多时,可以实现左右拖动的同时,又可以固定第一列。如何实现呢?效果如图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z0JhmBaf-1584728801736)(h...

2020-03-21 02:31:35 3301

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除