- 博客(35)
- 收藏
- 关注
原创 JS处理小数相加出现溢出的问题
1、首先呈现一下问题(可能是因为二进制计算溢出导致的):let a = 0.08let b = 0.12let c = 0.04let sum = a + b + c // 结果为 0.240000000000000022、解决办法:将小数转换为整数进行计算 计算后结果除以转换的倍数。(a * 1000 + b * 1000 + c * 1000) / 1000 // 结果为0.24......
2022-02-28 10:42:10
1665
原创 vue项目未加载完成前显示loading...
场景:vue项目加载时,由于各种原因 可能会白屏一会再显示页面解决方法:在index.html里面加入loading的元素,让loading元素显示,让app元素隐藏// index.html<!DOCTYPE html><html lang=""><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <m
2022-02-17 17:50:12
4346
3
原创 网络异常页面
场景:移动端网络断开业务处理框架:vue// refresh.vue<template> <div class="refresh"> <van-empty :image="image" :description="description" /> </div></template><script>export default { name: 'refresh', props: { // 展示的
2022-02-17 17:39:52
520
原创 uni-app 自定义顶部状态栏注意事项
框架:uni-app场景:即取消默认的原生导航栏解决方法可参考:uni-app自定义导航栏使用注意// pages.json { ... "globalStyle": { ... "navigationStyle": "custom", }}<template> <view> // 占位 <view class="status_bar" :style="headStyle"></view> // 自定义导航栏 &
2022-02-17 17:34:40
642
原创 js阻止浏览器回退
// vue项目mounted() { // 防止页面后退 history.pushState(null, null, document.URL); window.addEventListener('popstate', this.handleEvent, false);},methods: { handleEvent() { history.pushState(null, null, document.URL); }},destroyed() { wind
2022-02-17 17:08:45
1494
原创 js常用方法utils
/** * @name: 钱保留两位小数 不足补0 * @param {String | Number} value 要处理的数据 * @param {Number} tofixed 保留几位小数 * @return {*} */export const toDecimal = (value) => { const num = parseFloat(value); if (isNaN(num)) return; let rn = (parseInt(num * 100) / 100)
2022-02-17 09:09:01
423
原创 vue中解决微信html5原生ios虚拟键返回不刷新问题
场景:在微信中使用授权登录后 物理返回 页面未更新解决方法: 调用以下方法// vue项目mounted() { window.onpageshow = (event) => { if (event.persisted) window.location.reload(); };}原理:pageShow事件在页面显示即会触发,无论页面是否来自BF Cache。通过检测persisted属性即可判断是否存在 BF Cache 行为。优点:大部分浏览器都支持pageShow方法与per
2022-02-17 09:03:00
1421
原创 husky hooks 不起作用的解决方法
问题在项目实际应用过程中遇到过一次 husky hooks 不生效的问题,这里记录下问题表现:问题比较比较直观,通过 huksy install 之后 git commit 时,pre-commit 设置的 hooks 不起作用。重新安装 husky 或者其他依赖等都不起作用解决方法1、删除 .git/hooks 目录2、运行 npm install or yarn install...
2022-01-27 09:54:51
1619
原创 适配的几种方法
一、移动端适配1、rem: 页面加载的时候动态计算首先要知道rem是怎么用的,它是根据根元素大小来计算1rem到底等于多少px,如果根元素为100px,那么1rem=100px,2rem=200px;模拟场景:设计师的设计稿假设为750px;假设我们现在有两个设备,一个设备的宽度就是750px,并且我给这个宽度为750px设备的根元素设置为100px,这样1rem就等于100px了。/ * * 如下当前设计稿为750,如果设备也是750的分辨率的话 那1rem = 100px;* /fun
2021-07-19 14:44:38
1122
原创 MacOS 常用终端命令大全
查询端口号占用// 查看被占用进程的pidsudo lsof -i:8700// 杀死进程sudo kill -9 pid
2020-12-03 13:06:34
400
原创 Mac下iTerm2主题配置
一、安装Oh My Zshsh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"二、替换OMZ主题主题大全:https://github.com/robbyrussell/oh-my-zsh/wiki/Themes安装完成后操作oh my zsh提供了数十种主题,相关文件在~/.oh-my-zsh/themes目录下vi ./zshrc修改
2020-12-03 11:05:16
1281
原创 element-ui隐藏日期弹窗里“此刻”按钮和设置日期禁用范围
备注:前端框架 vue一、隐藏日期弹窗里的“此刻”按钮背景:element-ui日期时间弹窗里有“此刻”这个按钮选项,没有参数设置此按钮的隐藏,目前只能通过样式进行隐藏。设置参数:popper-class<template> <el-date-picker type="datetime" popper-class="date_picker" ... > </el-date-picker></template><style
2020-12-03 10:45:13
4962
1
原创 Echarts阻止图例点击的默认事件
- 监听图例的legendselectchanged事件 chart.on('legendselectchanged', (params) => { // 处理自己的自定义事件 *** // 阻止默认事件(原理就是将点击的图例重新选中) chart.dispatchAction({ type: 'legendSelect', name: params.name.
2020-11-18 14:55:35
3836
原创 【nvm】node版本管理工具
nvm是node版本管理工具为了解决node各种版本存在不兼容现象nvm是让你在同一台机器上安装和切换不同版本的node的工具安装:两种方式curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.35.1/install.sh | bashwget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.35.1/install.sh | bash命令:nvm ls-r
2020-11-06 14:36:25
196
原创 需要掌握的GIT技巧
一、GIT连接远程库关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git关联后,使用命令git push -u origin master第一次推送master分支的所有内容;如果push失败,请先pull一下远程库;如果pull出现fatal: refusing to merge unrelated h...
2020-01-17 13:52:15
313
原创 input选择保存的文件夹路径
input添加这两个属性directory=""、nwdirectory=""<input type="file" hidden directory="" nwdirectory="" ref={ref => {this.srcFolder = ref;}} onChange={(e) => {this.changeFolder(e);}}/>...
2019-07-25 17:21:48
11159
4
原创 ESlint配置规则
编辑文件:.eslintrc.json规则格式是<规则名称>: <告警级别>,告警级别分为三种:"0"表示忽略问题,等同于"off"; "1"表示给出警告,等同于"warn"; "2"表示直接报错,等同于"error"。'rules': { // no-var 'no-var': 'error', // 要求或禁止 var 声明中的初...
2019-07-22 10:26:10
737
原创 js对象深拷贝
场景:react父组件通过props传给子组件一个对象,子组件更改这个对象时,父组件的这个对象同步改变对象深拷贝方法:JSON.parse(JSON.stringify(obj))
2019-07-18 14:31:50
181
原创 明文新转换成密文信息
明转密:Buffer.from(encodeURI(JSON.stringify(value))).toString('base64')密转明:JSON.parse(decodeURI(Buffer.from(value 'base64').toString()))value: 要转换的值
2019-07-03 09:47:22
1319
原创 Vue history路由模式配置及后台配置
项目根目录文件夹名称:rootFile一:后台配置:1、Nginx:location ~ ^/rootFile/ { root F:/XXX; try_files $uri $uri/ /rootFile/index.html;}二:Vue配置:1、文件 router.js将 mode 设置成 history 模式,并设置base:rootFile(...
2019-06-26 16:29:11
7648
转载 VUE项目打包(解决背景图片不显示问题)
https://blog.csdn.net/qq_34611721/article/details/80996947
2019-06-25 10:58:14
819
原创 vue打包样式失效处理
在失效的样式上添加:(/*! autoprefixer: off */ XXX /* autoprefixer: on */)/*! autoprefixer: off */background:-webkit-linear-gradient(left, #6e7cec, #56b2f5);background:-moz-linear-gradient(left, #6e7cec, #5...
2019-06-25 10:56:00
1132
原创 下载PDF文件及打印PDF文件
一:下载PDF如果单纯的用A标签设置download属性来下载是直接打开pdf文件的而不是下载。import { download } from './download';/** * 下载PDF文件 * @param fileURL */export const downloadPdf = (fileURL) => { const name = fileURL.s...
2019-05-30 13:12:24
1513
原创 浏览器批量下载
let urlArray = []; // 存储要下载的文件地址let downloadNum = 0; // 方法执行次数function circularWindow(){ setTimeout(() => { downloadPaper(urlArray[downloadNum]); },500); // 次数设置一下延时,不然浏览器会因为反应不过来而出现误差...
2019-04-26 09:36:53
664
原创 React 父组件调用子组件
子组件如果引入mapStateToProps,mapDispatchToProps调用store里的属性,则父组件不可以直接通过ref调用子组件方法(即:ref={(ref) => { this.XXX= ref; }}),请知悉。一:子组件未调用store属性import React, {Component} from 'react';export default class ...
2019-04-12 10:26:43
508
原创 下载音视频及图片
/** * 下载音视频 * @param filePath 路径 */export const downloadVideo = (filePath) => { const name = filePath.split('/')[filePath.split('/').length - 1]; fetch(filePath).then(res => res.blob())...
2019-03-18 14:58:44
231
原创 实时监测麦克风音量及检测MIC
调用的技术:Web Audio API(navigator.getUserMedia(),目前推荐使用最新的接口MediaDevices.getUserMedia())RecordRTC(用来录音,暂时可忽略)可参考:https://zhuanlan.zhihu.com/p/26536898、https://codepen.io/huooo/pen/LBKPZp注意:navig...
2019-02-14 17:04:08
9723
2
原创 NWjs
1.NW.jsNW.js是Intel的工程师写的一个基于node.js和chromium的应用程序运行环境。(比较老,主要针对的是xp系统)2.ElectronElectron是一款利用Web技术开发跨平台桌面应用的框架。(建议使用)最近因公司项目需求,需要使用nw,就在网上找资料学习了下官网地址是:http://nwjs.io/,进去之后,点击下载SDK的版本,并解压至本地目录即可。(sdk是开...
2018-07-05 13:17:40
4311
1
转载 Package.json 属性说明
Package.json 属性说明name - 包名。version - 包的版本号。description - 包的描述。homepage - 包的官网 url 。author - 包的作者姓名。contributors - 包的其他贡献者姓名。dependencies - 依赖包列表。如果依赖包没有安装,npm 会自动将依赖包安装在 node_module 目录下。repository - 包...
2018-07-03 13:34:57
304
转载 Npm常用命令
使用 npm 命令安装模块npm 安装 Node.js 模块语法格式如下:$ npm install <Module Name>以下实例,我们使用 npm 命令安装常用的 Node.js web框架模块 express:$ npm install express安装好之后,express 包就放在了工程目录下的 node_modules 目录中,因此在代码中只需要通过 require(...
2018-07-03 13:33:59
341
转载 你知道版本号的意思嘛?
版本号语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。当代码变更时,版本号按以下原则更新。如果只是修复bug,需要更新Z位。如果是新增了功能,但是向下兼容,需要更新Y位。如果有大变动,向下不兼容,需要更新X位。版本号有了这个保证后,在申明第三方包依赖时,除了可依赖于一个固定版本号外,还可依赖于某个范围的版本号。例如"argv": "0.0.x"表示依赖于0.0.x系列的最新版...
2018-07-03 13:26:16
1619
原创 通过js实现纯前端将数据导出excel
参考前辈资料:https://blog.csdn.net/hhzzcc_/article/details/80419396踩坑:1、网上有许多纯前端实现数据导出excel,但是好多都是有问题的,比如有实现后下载的文件格式不对,打开的还是html文件,虽然实现了后缀名.xls;2、引用第三方插件的,不过前提是你的html里的数据必须是table表格,还有页面要引入太多的依赖文件,本人嫌麻烦暂时还没用...
2018-06-28 17:26:56
2122
原创 Git关联远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:现在的情景是,想把本地的项目上传到码云或者GitHub上,方便在别的地方进行下载操作或者和...
2018-05-10 14:05:12
351
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人