自定义博客皮肤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)
  • 收藏
  • 关注

原创 vue 面试题

VUE1.vue的生命周期beforeCreate>created>beforeMount>mounted>beforeUpdate>updated>beforeDestroy>destroyedbeforeCreate:data和methods中的数据还没有初始化created: 在created中,data和methods都已经初始化好beforeMount: 此时模板已经在内存中编辑完成了,但尚未把模板渲染到页面中mounted: 表示内存中的模板

2021-06-04 17:02:58 131

原创 nodejs之path

4.path.basename 获取路径的基础名称。1.path.resolve 拼接规范的绝对路径。2.path.sep 获取操作系统的路径分隔符。5.path.dirname 获取路径的目录名。6.path.extname 获取路径的扩展名。3.path.parse 解析路径并返回对象。

2023-05-29 15:46:35 126

原创 node.js之文件操作

fs模块可以实现与硬盘的交互,例如:文件的创建、删除、重命名、移动,还有文件内容的写入、读取,以及文件夹的相关操作。

2023-05-26 20:49:34 217

原创 node.js之Buffer

Bufer 是一个类似于数组的 对象,用于表示固定长度的字节序列。Buffer 本质是一段内存空间,专门用来处理 二进制数据。2,Bufer 性能较好,可以直接对计算机内存进行操作。3,每个元素的大小为 1字节 (byte)1,Buffer 大小固定且无法调整。

2023-05-24 20:25:53 161

原创 js获取近三个月时间

//获取近三个月时间 static getThreeDays = (now) => { var year = now.getFullYear(); var month = now.getMonth() + 1;//0-11表示1-12月 var day = now.getDate(); var dateObj = {}; if (parseInt(month) < 10) { mon.

2023-05-23 20:57:57 977

原创 性能优化 面试

(2)缩小文件大小(资源压缩/uglify-js进行js文件的压缩)b.建立连接(TCP三次握手)每一次都是试探,不携带任何正式数据。(1)减少http请求(精灵图,雪碧图,css与js内联与合并)第一次访问之后,会将域名解析的映射缓存到本地(浏览器缓存)(1)避免全局变量,有的话手动回收(obj=null)a.解析url,拿到ip地址(DNS域名系统)3.内存占用(内存占用过大,浏览器崩掉等)4.电量消耗(游戏方面,暂不考虑)e.断开连接(TCP四次挥手)(2)少用闭包,手动回收。key=123:参数。

2023-05-23 17:33:25 470

原创 react 面试题

react16.4后使用了新的生命周期,使用getDerivedStateFromProps代替了旧的componentWillReceiveProps及componentWillMount。使用getSnapshotBeforeUpdate代替了旧的componentWillUpdate。初始化阶段:constructor()、getDerivedStateFromProps()、render()、componentDidMount()

2023-05-22 10:49:52 55

原创 JS面试题

堆:顺序随意栈:先进后出在java中堆一般用来存储对象和数组,栈一般用来存储方法和基本类型(注:基本类型不包括string)变量。

2023-05-22 10:49:23 74

原创 map遍历数组返回一个promise

在使用map遍历数据进行赋值时,这个值需要请求接口时拿到,单纯使用map遍历时,查询接口是一个异步操作,最后返回一个promise;所以需要等到执行完异步操作才进行赋值,使用promise.all解决。

2023-04-28 09:36:20 358

原创 Swiper8的基本使用

注意:版本不同,属性不同,使用方法不同。

2023-03-09 19:18:40 726

原创 Java入门day02之变量

1.变量按照数据类型分:基本数据类型:整形:byte、short、int、long 声明long类型必须以L或者l结尾;类型占用存储空间表述范围byte1字节=8bit位-128~127short2字节-215 ~ 215-1int4字节-231 ~ 231-1(约21亿)long8字节-263 ~ 263-1浮点型:float、double;float:单精度,尾数可以精确到7位有效数字,精度很难满足需求。double:双精度,精度是

2022-02-14 14:52:49 130

原创 Java入门day01之输出hello world

1.使用记事本新建helloword.javaclass HelloChina { public static void main(String[] args){ System.out.println("Hello World"); }}2.在命令提示符中,进入文件所在的文件夹中javac helloword.java //此命令会生成一个以class为后缀的文件java HelloChina //HelloChina生成的.class文件...

2022-02-10 17:02:30 367

原创 vue3+antd-design-vue语言国际化配置

1.安装antd-design-vue 时使用npm i --save ant-design-vue@next命令,(文末会贴出相关框架版本);2.语言国际化配置分为两种,第一种是我们自定义组件使用到的文字,第二种是ui框架自带的文字。思路:自定义文字可动态匹配,ui框架上的可采用它自带的国际化配置文件结构新建语言包文件:zh_CN.ts// 中文翻译export default { title: "国际化语言配置", btn: "按钮", add: "添加", del:

2022-02-09 21:25:48 3681

原创 tweenjs+threejs 多个动画依次执行

1.使用场景:当小车自动驾驶时,会由多条路线依次驶过,而tweenjs动画是链式函数执行let myTwen = new TWEEN.Tween(position); //position格式 :{x:x,y:y} myTwen.to( { x: geometryGroup[1][0], y: geometryGroup[1][1], }, 7000 ) .onUpdate((pos) => {

2022-01-20 17:05:31 1531 1

原创 屏幕坐标转换成threejs的坐标

使用场景:当我们点击屏幕时获取的坐标和three的坐标不一样时,这时候就需要转换。 const convertCoodsToThree = (mouseX, mouseY, mouseZ = 0) => { const x = (mouseX / window.innerWidth) * 2 - 1; const y = -(mouseY / window.innerHeight) * 2 + 1; var vec = new THREE.Vector3(); va

2022-01-19 20:15:37 1253

原创 nodejs介绍

1.什么是nodejs?nodejs从编程语言看,他的前身就是jsavaScript语言。也可以看作是后端语言,他扩展了JavaScript这门编程语言的能力,所以更倾向于看作是一个开源和跨平台的 JavaScript 运行时环境。2.特性(优点)1)、Node.js 在浏览器之外运行 V8 JavaScript 引擎(Google Chrome 的内核)。 这使得 Node.js 的性能非常好。2)、Node.js 应用程序在单个进程中运行,无需为每个请求创建新的线程。 Node.js 在其标准库

2022-01-06 20:53:32 943

原创 数字转大写(monery)

//数字转大写(monery) static numToCny = (money) => { // 汉字的数字 var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'); // 基本单位 var cnIntRadice = new Array('', '拾', '佰', '仟'); // 对应整数部分扩.

2022-01-06 20:45:05 578

原创 Mapbox icon-image表达式

1.case 'icon-image': [ 'case', ['==', ['get', 'status'], 3], 'imageIcon1', ['all', ['==', ['get', 'status'], 2], ['==', ['get', 'statusA'], 1]], 'imageIcon2', ['all', ['==

2022-01-06 20:43:07 1836 1

原创 SWR的使用教程

SWR用于数据请求的 React Hooks 库,使用 SWR,组件将会不断地、自动获得最新数据流。UI 也会一直保持快速响应。安装yarn add swr 或者 npm install swr使用const { data, error, isValidating, mutate } = useSWR(key, fetcher, options)1.封装useFetch指令export function useFetch<Data = any, Error = any>(u.

2021-11-22 21:18:02 1129

原创 mapbox两个图层重合,点击事件都触发问题

使用场景:地图增加了两个layer并且重合,点击重合部分,layer的点击事件都会触发解决方法:1.梳理出两个图层的层级顺序,点击上面一层不触发下面一层的点击事件可以使用e.preventDefault();在下面图层判断e.defaultPrevented。在复杂一点,点击上面不触发下层,点击下层不触发上层事件,可以结合 queryRenderedFeatures判断map.on("click", (e) => { var features = map.queryRende

2021-11-22 21:16:05 2222

原创 react 在中文输入时触发input的改变事件

背景:input框在输入中文出现拼音的过程中,会一直触发onchange事件解决方法:input标签自带输入开始(onCompositionstart)与输入完成(onCompositionEnd)两个事件;

2021-09-22 16:39:05 1365

原创 JS 数组差集、交集、并集

let arr1 = [{id}];let arr2 = [{fpcid: “2da37fdfe66140089dc3367b21cc6194”, fpcNameCode: “34”},{fpcid: “2da37fdfe66140089dc3367b21cc6195”, fpcNameCode: “33”}];let arr3 = arr2.filter(v => {return arr1.every(e => e.fpcid != v.fpcid);});...

2021-07-20 22:55:29 197 1

原创 Unexpected keys will be ignored.

emgcReport", “resources”, “disposalJudgment”, “earlyWarning”, “emgcStop”, “infoReception”, “assessTemplate”, “emgcDrill”, “record”, “fireTeam”, “firePlan”, “workForce”, “fireEngines”, “carFile”, “carMaintain”, “carStatus”, “actionSysState”, “interfacePlatf

2021-07-19 19:36:23 206

原创 canvas实现虚线带箭头效果

import { useEffect,Fragment } from “react”import “./index.css”const arr=[{id:1,name:“测试1”},{id:2,name:“测试2”},{id:3,name:“测试3”},{id:4,name:“测试4”},{id:5,name:“测试5”},]const MapCanvas =()=>{useEffect(()=>{arr.map((v,index)=>{if(

2021-07-14 20:12:55 973 1

原创 react echarts中国地图的实现

安装echartsnpm install echarts --saveimport { useEffect } from "react"import * as echarts from 'echarts'; //全局引入 ,可按需引入import china from "../utils/china.json" import "./map.css";const Map=()=>{ var myChart ; useEffect(()=>{ l

2021-07-13 20:12:03 1177 1

原创 React Hooks useState useEffect

react hooks在16.8版本中推出,自推出后备受好评,因为他解决了旧版本上组件无法复用状态逻辑的问题

2021-07-12 20:52:58 223

原创 umijs中使用useDispatch

使用umi+dva时,使用useSelector useDispatch 替代connectimport {useDispatch} from 'umi';const Home=()=>{ const dispatch = useDispatch() const getData=()=>{ dispatch({ type:"home/get" }) } return ( <div&g

2021-07-11 21:38:03 2671

原创 React修改打包后的文件名称

1.新建.env.production文件2.修改.env.production文件代码BUILD_PATH=dist

2021-07-08 20:50:00 2163 2

原创 umijs引入link、router报错

import Link from “umi/link”umi/link in ./src/pages/index.tsxTo install it, you can run: npm install --save umi/linkimport {Link} from “umi”import router from ‘umi/router’;<button onClick={() => { router.goBack(); }}>go back</button>

2021-07-08 20:48:51 1291

原创 npm常见命令及 --save --save-dev -g的区别

npm 是 Node.js 标准的软件包管理器。–save 安装并添加条目到 package.json 文件的 dependencies。–save-dev 安装并添加条目到 package.json 文件的 devDependencies。区别主要是,devDependencies 通常是开发的工具(例如测试的库),而 dependencies 则是与生产环境中的应用程序相关。PS:运行时需要用到的包使用–save,否则使用–save-dev。常见命令:npm init //初始化项目,创

2021-07-07 21:17:46 260

原创 dva Reducers与Effects的使用介绍

介绍dva 首先是一个基于 redux 和 redux-saga 的数据流方案,然后为了简化开发体验,dva 还额外内置了 react-router 和 fetch,所以也可以理解为一个轻量级的应用框架。定义modeldva 通过 model 的概念把一个领域的模型管理起来,包含同步更新 state 的 reducers,处理异步逻辑的 effects,订阅数据源的 subscriptions 。Reducers在 model 文件夹下新建products.js文件export defaul

2021-07-07 17:13:01 5485

原创 dva Please use `require(“history“).createHashHistory` instead of `require(“history/createHashHistory

1.警告信息:Please use require("history").createHashHistory instead of require("history/createHashHistory”)解决方法:找到文件node_modules=>dva=>lib=>index.js,找到require(“history”).createHashHistory,更改为:require(“history/createHashHistory”); 更改后需要重新启动项目2....

2021-07-07 15:25:24 370

原创 react网路网络接口是否请求依赖另一接口请求结果

在请求任何接口前,先请求token是否过期这个接口(接口名:isToken),后台返回false时,界面返回登录界面并不请求其他任何接口;在接口拦截器里面判断url如果不是isToken则请求token是否过期这个接口,然后写判断逻辑最后会出现token失效多次弹窗,可以存一个变量,在登录界面的生命周期函数中判断是否是因为token失效返回的界面,如果是则不做任何操作...

2021-07-05 21:03:47 355

原创 React+Hooks useMemo和useCallback的使用

在使用function的形式创建组件时,内部state就无法向class声明组件去通过shouldComponentUpdate进行判断值是否变化,这样就会出现较大的性能消耗,所以就有了useMemo和useCallback,(PS:useMemo返回缓存的变量,useCallback返回缓存的函数)1.useMemoimport React,{useMemo, useState} from 'react';export default function NumMemo() { const [

2021-07-05 20:54:23 137

原创 react fetch请求本地模拟接口报错(SyntaxError: Unexpected token < in JSON at position 0)

1.使用fetch时请求本地模拟json文件时拿不到数据解决方法:将json文件放在与index.html文件同级 fetch("./data.json",{method:"get"}).then(res => { return res.json() } ) .then( (result) => { console.log(res

2021-07-05 10:58:02 641

原创 react+hooks的定时器问题

1.使用场景:当页面需要实时获取当前时间时常常使用定时器来获取import { useEffect, useState } from "react";const Time =()=>{ const [date,setDate]=useState(""); useEffect(()=>{ let timer=setInterval(()=>{ setDate(new Date().getSeconds()); console.log("定时器开始了

2021-07-04 20:22:48 1458

原创 git问题汇总

解决 fatal: Not a git repository (or any of the parent directories): .git 问题在命令行 输入 git init 然后回车就好了

2021-07-01 20:23:15 479

原创 dva : 无法加载文件 xxxx\npm\dva.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅...

1.打开PowerShell,由管理员身份运行;2.输入get-ExecutionPolicy,获取到的值为Restricted;3.输入Set-ExecutionPolicy -Scope CurrentUser;4.出现ExecutionPolicy: ,填入RemoteSigned;5.是否更改策略设置,填入Y6.再次输入get-ExecutionPolicy,此时值为RemoteSigned;更改完成后,输入get-ExecutionPolic在PowerShell获取到的值Remote

2021-07-01 15:04:31 475

原创 React使用require时引入图片不显示

1.需求:React面临动态引入图片时,会使用到require,直接使用require时,图片不会显示<img src={require("地址")} alt="" /}2.解决方法 后面添加.default<img src={require("地址").default} alt="" /}如果图片是动态引入的,按照下面这种方式let imgAddress="././assets/img";<img src={require(imgAddress).default} alt

2021-07-01 13:45:55 1129 1

原创 实时获取地理位置及天气

var BMap = window.BMap;//取出window中的BMap对象var myCity = new BMap.LocalCity();let WeatherLists = {};myCity.get(function (result) { console.log(result.name); //城市名称 if (result.name) { /*通过当前位置城市信息获取天气*/ axios.get ('https://free-ap

2021-06-30 22:07:01 411

空空如也

空空如也

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

TA关注的人

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