自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于for in 循环会遍历原型链上的属性的问题

2.只遍历对象自身的属性,而不遍历继承于原型链上的属性,使用hasOwnProperty 方法过滤一下。for in可遍历原型链上扩展的属性,Object.keys() 只遍历自身属性。关于for in 循环会遍历原型链上的属性的问题。

2023-09-13 14:57:15 388

原创 for in 的踩坑点

for in 会遍历prototype上的扩展属性,

2023-09-13 14:54:54 104

原创 关系图谱库 --- relation-graph

relation-graph官网地址在官网中能看到一些基本的配置和方法,但是并不全面,有些东西可以去github上面的问题解答查看

2023-09-13 14:53:39 1024 4

转载 CSS3中如何解决子元素继承父元素的opacity属性

css3中的opacity属性是用来设置 div 元素的不透明级别的,但是我们往往会遇到因为父级元素设定opacity后,子元素也跟着透明了,但是有时候我们只是想让背景是透明的,这该如何解决呢?

2023-08-16 10:39:13 330

原创 electron 运行以及打包超时解决方法

我是通过vue add 的方式去添加electron相关依赖的,然后会在package.json中,自动生成运行和打包electron的命令。打包过程中遇到的问题,无非就是依赖安装、入口文件、打包之后的程序没办法执行。首先是运行过程中,对于electron依赖的拉取,会很慢,或者超时。,运行electron,直接执行。

2023-07-05 16:20:30 1834

原创 electron 单个实例控制以及日志输出

判断当前程序的实例是否为当前取得锁, 或者说, 当前实例是否为单一的固定实例, 如果当前实例没有取到锁, 返回 false,说明当前实例应该被关闭。这是在网上能查出来的答案,这么写也能满足基本的功能,但是有缺陷,必须我将程序设置到了后台隐藏起来,通过。在使用electron打包的应用程序的时候,点击应用图标会打开多个实例,要想控制单个实例,需要通过。能够将程序唤醒后的页面没办法输入和点击,会出现一个卡死的状态?关闭程序的时候,会造成页面闪一下(就是程序可能 已经运行起来,突然一下关闭的)

2023-07-05 16:18:11 997

原创 electron主进程与渲染进程通信

main.js中发送。

2023-06-26 18:12:08 533

原创 使用react-dnd + react-dnd-html5-backend 实现节点拖动排序

使用reac-dnd,react-dnd-html5-backend实现节点拖动排序

2022-11-08 15:34:58 1723 1

原创 antd Form组件的onValuesChange没有触发问题

antd Form组件的onValuesChange回调,在通过form.setFieldValue / form.setFieldsValue api修改时,不会触发。

2022-10-10 14:19:15 3380

原创 数据可视化前端技术选型一

数据可视化前端技术选型及入门练习

2022-09-21 16:52:11 502

原创 前端单元测试框架jest

前端单元测试框架jest

2022-08-30 16:21:43 366

原创 前端单元测试

前端单元测试

2022-08-30 16:10:30 217

原创 前端导出表格数据到Excel

前端导出页面表格数据到Excel及问题处理

2022-08-30 15:51:14 562

原创 解决‘WebDriver‘ object has no attribute ‘find_element_by_xpath‘问题

python数据爬取问题解决

2022-07-26 14:57:38 15361 5

原创 本地文件上传按钮组件

封装一款好看的文件上传按钮import React from 'react';import './index.scss';class SelectFileButton extends React.Component { constructor(props) { super(props); } onChange = (event) => { let e = event || window.event; let files = e.target.files;

2022-05-18 10:46:52 182

原创 前端面试题记录

什么是链表,谈谈对链表的理解链表是物理存储单元上非连续的、非顺序的存储结构,数据元素的逻辑顺序是根据链表的指针地址去实现的,由一系列节点(指针地址)组成,可动态生成节点包括两个部分:存储数据源的数据域,存储指向下一个节点的指针地址的指针域相对线性表顺序结构,操作更为复杂链表分为单链表、双链表、单向循环链表、双向循环链表链表的作用是:实现元素的存储按一定顺序存储,允许在任意位置插入和删除;包括单向节点、双向节点、循环节点链表和数组的区别:数组是使用一块连续的内存空间去存储数据,实现数据的增删不..

2022-05-17 11:31:55 426

原创 微信小程序面试题总结

文章目录一、微信小程序的主要文件二、小程序怎么跟随事件传值三、小程序的wxss和css有什么区别四、小程序的双向绑定和vue有什么区别五、小程序的声明周期六、小程序怎么实现下拉刷新七、```bindtap```和```catchtap```的区别八、小程序有哪些传递数据的方法九、简述```navigateTo、redirectTo、switchTab、navigateBack、reLaunch```的区别十、小程序```wx:if```和```hidden```的区别十一、```app.json```全局文

2022-01-21 16:43:58 849

原创 元素隐式具有 “any“ 类型,因为类型为 “string“ 的表达式不能用于索引类型

元素隐式具有 “any” 类型,因为类型为 “string” 的表达式不能用于索引类型在使用typescript时,在对变量进行了类型声明后,在使用for in 的时候出现了这样的问题经过查资料,key值的类型不是string,在javascript中是默认给你转好的,而在Typescript中则不是,因此要么转,要么声明,要么忽略忽略修改tsconfig.json文件中的配置转类型export function isValidKey(key: string | number | sym

2021-12-10 16:23:48 2139

原创 前端面试题及答案

JS数据类型面试官:JavaScript中什么是基本数据类型什么是引用数据类型?以及各个数据类型是如何存储的?⭐⭐⭐⭐⭐答:基本数据类型有NumberStringBooleanNullUndefinedSymbol(ES6新增数据类型)bigInt引用数据类型统称为Object类型,细分的话有ObjectArrayDateFunctionRegExp基本数据类型的数据直接存储在栈中;而引用数据类型的数据存储在堆中,在栈中保存数据的引用地址,这个引用地址指向的是对应的数据,

2021-12-03 10:06:12 637

原创 antv x6踩坑记录二

graph配置panning,会出现一种情况,就是我鼠标点击了画布的某个点,然后滚动滑轮去点击不在当前视图的某个节点的时候,它会自动聚焦到你之前点击的画布的点上使用fromJSON去序列化节点渲染,在有群组节点的情况下,会出现群组内的节点连线被覆盖的问题,我的处理情况是通过先将节点中的群组节点和子节点区分开来,通过addNodes先将所有的群组节点渲染,然后在渲染子节点和普通节点,最后遍历群组节点,通过addChild的方法把对应的子节点添加到对应的群组节点中,最后才通过addEdges方法渲染连线关.

2021-11-19 10:43:36 5767 8

原创 根据字体大小计算字符串长度

根据字体大小计算字符串在页面上的长度// 获取字符串px长度export const getTextWidth = (str, fontSize) => { let result = 10; let ele = document.createElement('span') //字符串中带有换行符时,会被自动转换成<br/>标签,若需要考虑这种情况,可以替换成空格,以获取正确的宽度 //str = str.replace(/\\n/g,' ').replace(/\\r/

2021-10-26 10:58:03 748

原创 antv x6踩坑记录一

x6的配置啥的,这里就不赘诉了,可以去官网看antv x6官网地址,写得很详细,这里主要讲一下使用x6的过程中遇到的坑的问题,有的找到了解决办法,有的暂时没找到解决办法,如果哪位大佬有解决办法,愿意分享的话,十分感激!MiniMap和Selection不能共用:这个问题我暂时没有找到解决办法。在使用小地图的时候,再在画布中框选了子节点并添加了群组节点,在群组没有收缩的时候是能够正常展示,但是群组收缩后再次打开就会导致整个页面崩溃。这里的建议是,值进行群组节点的增加,但是不建议给群组节点增加收缩功能增加

2021-10-26 10:54:37 4379 3

原创 chrome浏览器解决跨域请求SameSite方案,Chrome/Edge 91版本SameSite by default cookies被移除后的解决方案

Chrome/Edge 91版本SameSite by default cookies被移除后的解决方案

2021-06-07 10:46:09 4331

原创 angular如何如何监听对象的值和一次性监听多个值

监听多个值: $scope.$watch('{a: value1, b:value2}', funtion(newValue, oldValue) { console.log(newValue.a, newValue.b) })监听对象属性 $scope.$watch('obj.name', function(newValue, oldValue) { console.log(newValue) })

2021-03-31 14:46:29 555

原创 angular 1使用日期范围插angular-daterangepicker/ bootstrap-daterangepicker

现在公司有一个很老的项目,采用的还是angular1的版本实现的,想要实现某个插件需求,就需要去网上各种搜索,这不就是有一个需求要实现日期范围插件,最终选择了angular-daterangepicker一套的插件(其实主要是bootstrap-daterangepicker插件),下面是该插件的一些用法理解:(我是一个angular小白,只是学框架的时候看过一点angular,有错误的地方请大家指正)使用bower安装插件,这里会安装angular-daterangepicker,bootstrap-

2021-03-31 14:35:31 403

原创 实现浏览器下载文件

实现浏览器下载文件的方法有以下几种,采用fileSaver插件,接收的是文件的Blob,用法是fileSaver.save('文件流', ‘导出文件名’);可适用于get,post方式的下载;采用a标签,配置属性download,href就是你要下载的文件地址,download就是下载的文件名,这种方法只适用于get请求方式;采用iframe也可实现a标签的效果,这种方法只适用于get请求方式;iframe内嵌套form表单,实现模拟提交,可实现post方法的文件下载;...

2021-03-29 11:06:42 378

原创 wangEditor 支持配置默认字体大小,支持自定义配置字号

看了wangEditor3以上的开发文档发现,默认字号大小菜单只有1-7的值,且不能增加,只能减少这个满足不了当下的需求,就只能自己重新写一个菜单来实现字号大小,具体的请参考这边文章:wangEditor增加行高和具体字号功能...

2021-03-10 14:34:34 8714 5

原创 替换字符串中html标签内的空格,tab为&nbsp(不替换标签内属性空格)

替换字符串中html标签内的空格,tab为&nbsp // 空格替换 private replaceSpace(val: string) { const spaceRex1 = /(<.*?>)(.*?)(<.*?>)/g; const spaceRex2 = /\s/g; // 替换tab空格 let newVal = val.replace(/\t/g, '&nbsp;&nbsp;'); newVal = ne

2021-01-29 18:33:04 1050

原创 vue中ts无法识别引入的vue文件,提示找不到xxx.vue 模块解决办法

在vue + ts项目中,在.ts中引入.vue文件,会提示打不到module,但是编译可能成功,运行也不报错在src根目录下,新建一个sfc.d.ts文件这个里面的declare module “*.vue” {import Vue from ‘vue’export default Vue}在shims-vue.d.ts文件中官方文档有一个地方是说写到这里来着,所以shims-vue.d.ts中的这段要删掉,把他们写到sfc.d.ts中,问题就可以解决了...

2021-01-19 15:23:56 11760 1

原创 在iframe内部通过window.open打开页面使用postMessage通信造成跨域问题解决办法

最近项目为了接入公司其他项目,使用了iframe,一般用到iframe,要通信我第一时间想到的就是postMessage,这次也不例外,在iframe内部打开新页面并发送消息const opener = window.open('xxx.com')在xxx.com页面监听iframe内部发送消息,并回传消息给iframe//1.监听postMessagewindow.addEventListener('message', function (e) { // 处理消息 }}, f

2021-01-13 14:55:33 1880

原创 quill.js富文本编辑器中自定义标签的创建和使用

Quill是一个很流行的富文本编辑器,github上star大约21k:github地址 官网地址安装quill(这里是在vue项目中使用的)npm install -S quill-image-paste-module quill-image-resize-module vue-quill-editor如何在项目中使用请看官网,这里主要记录一下如何使用自定义标签,很多时候,我们需要在标签中增加自定义属性,或者新增quill原生不带有的标签,比如video,audio新增blot文件//

2021-01-13 10:54:50 2707 6

原创 react-responsive-carousel,一款好用的react的banner插件

React Responsive Carousel是一个基于React.js响应式轮播,功能强大,轻巧且可完全自定义,用于基于React的APP安装React Responsive Carouselnpm install --save react-responsive-carousel使用react-responsive-carouselimport React from 'react';import "react-responsive-carousel/lib/styles/carousel.

2020-11-25 10:48:16 2091

原创 使用react-cropper结合图片压缩方法对图片进行裁剪压缩处理

最近项目要使用图片裁剪上传,因为项目采用的是react+antd,所以第一时间想到的是ImgCrop插件,但是这不满足项目需求,项目要求的是能够缩放裁剪框,最后确定了采用react-cropper来实现图片的自定义裁剪安装react-croppernpm install --save react-cropper新建一个CropperModal.jsximport React, { useState, useEffect, useCallback, useRef } from 'react'impo

2020-11-13 17:03:45 1015

原创 使用postMessage的踩坑记录,解决postMessage的监听事件多次触发

解决 iframe.postMessage()多次触发请求问题方法一,将addEventListener改成onmessagewindow.addEventListener(‘message’, (e) => {})多次调用会多次生成不同的匿名函数e,应指向同一个命名函数window.addEventListener(‘message’, this.handler.bind(this)),命名函数绑定this后,调用会生成不同的对象而onmessage则不会window.onmessage=

2020-10-30 16:42:42 8589 3

原创 解决iframe跨iframe传值跨域问题

最近在项目中遇到过一种情况,在iframe里面再次嵌套了iframe,第一个iframe里面的是别的项目,第二个iframe里面的是自己的项目,然后点击第二个iframe里面的按钮弹出一个最外层的modal,关闭modal刷新第二个iframe里面的数据遇到的问题是:通过postMessage,在第二个iframe里面通过postMessage来通知最外层打开modal,但是最外层无法通过链式访问到第二个iframe;解决思路:由于第一个iframe是别得项目,其实可以让他们做一个中间层的postMes

2020-10-21 18:26:56 682

原创 解决使用iframe产生跨域问题

在项目中有时候需要嵌套不同项目的代码,可能是使用不同框架构建的或域名不同,这里就需要使用iframe进行嵌套,但是使用iframe违反了浏览器的安全策略,会造成通信跨域的问题Blocked a frame with origin "https:/*******com" from accessing a cross-origin frame.解决方法是采用html5的postMessage来解决上述问题用法“otherWindow.postMessage(message, targetOrigin,

2020-10-21 10:51:45 7599

原创 解决react 多行文本显示省略号不生效问题

在普通的前端css中,如果要是文本超出一行就显示省略号,一般在css中写:.box { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-break: break-all;}要想多行文本显示省略号(这里不考虑兼容情况),一般这样写:.box { overflow : hidden; text-overflow: ellipsis; display: -webkit-box; -w

2020-07-02 18:41:52 1272

原创 react native修改app名称

想要修改rn的名称,需要更改以下地方:编辑 android/app/src/main/res/values/strings.xml 文件<resources> <string name="app_name">测试App</string></resources>然后在android目录下执行./gradlew clean,这个是为了清除以前运行android设备上的一些缓存。再重新yarn android(最新的react-native-cl

2020-06-15 15:00:08 402

原创 在vscode终端输入某些命令时提示 xxx无法识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次的解决办法

很多时候,我们在打开vscode的终端输入某些指令时,会报错这样的一个错误:这是因为你笔记本禁止运行脚本,解决办法是放开powerShell对这类脚本的限制:使用管理员身份打开powerShell,然后输入:set-ExecutionPolicy RemoteSigned输入A或者Y就可以了,再输入命令就不会报错了...

2020-06-02 16:24:48 14122 4

原创 记录一下重构项目中遇到的坑1

在重构项目中遇到了一个问题,就是在umi框架内部打开一个外部链接,本地是能够在新的窗口打开该页面,但是放到服务器上就会出现404原因找了半天,结果是路由模式不对,这里要采用hash路由模式,新的小问题又出现了,放到服务器上能够正常打开外部链接,但是不会自动聚焦到第一个路由上面,然后又开始补bug,写了一个自动跳转到首页的函数 -。-import router from 'umi/router';goToFirstPage() { router.push('/first'); }..

2020-06-02 11:37:44 204

空空如也

空空如也

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

TA关注的人

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