自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (1)
  • 收藏
  • 关注

原创 从WebGL到Babylonjs

帮你快速简单的理解babylonjs对webgl的抽象、了解引擎的渲染本质

2023-04-23 17:35:24 837

原创 记录babylonjs使用过程中遇到的一些问题

记录一些在使用babylonjs开发时遇到的问题,如: 颜色设置偏差、贴图翻转、世界坐标系和本地坐标系转换等

2023-03-31 14:03:57 937

原创 实现一个PromiseA+

通过实现一个PromiseA+来加强对promise的理解,仅供参考~

2022-06-02 15:13:06 299

原创 实现一个简单的浏览器插件

一个简单的浏览器插件,解决掘金、简书、知乎、csdn等网站跳转链接之前会先进入一个安全提示页面的问题

2022-06-01 21:52:15 297

原创 threejs实现一个固定大小的3d标点

需求背景需要在3d模型上实现标注的功能,一开始是直接通过添加一个普通的mesh来实现的,但是这样就会有一个问题-当视图缩放的时候,标注也会跟着一起放大缩小,影响视觉效果,因此需要实现一个不会随着视图一起放大或者缩小的mesh实现思路明确方向根据需求,可以知道我们其实需要实现的就是更改模型渲染的默认方式,而模型的渲染是由模型的MVP三个矩阵来决定的再进一步分析MVP三个矩阵,Model矩阵决定模型的旋转、缩放和位移,View决定相机的变换, Projection决定模型最终到屏幕的输出。根据需求

2022-05-30 15:14:27 2637 4

原创 threejs实现测量模型的体积、表面积、壁厚等功能

需求分析实现模型的3维测量工作,包括体积、表面积、壁厚等代码实现 (当前threejs版本 r139)1、体积的测量function getVolume(geometry) { if (!geometry.index) return; if (!geometry.isBufferGeometry) { console.log("'geometry' must be an indexed or non-indexed buffer geometry"); retu

2022-05-23 09:07:36 2607 1

原创 threejs实现任意模型的爆炸效果

threejs通过代码计算实现任意模型的爆炸效果

2022-05-23 09:05:10 4426 26

原创 gltf-pipeline批量压缩处理

gltf模型的批量压缩

2022-03-23 11:05:09 711

原创 crlf和lf换行格式冲突解决

原因:在linux以及MacOS中的默认换行符为 /n,而在windows电脑中的默认换行符为/r/n,这就导致了开发人员在不同系统开发统一个项目的时候,即使你没有修改某个文件,你的git依旧会识别到文件更改了, 就给我们带来了迷惑。解决办法:git config --global core.autocrlf falsevsc配置: 文件 > 首选项 > 设置 > 搜索 eol > 选择/n选项注意:配置好之后只对新clone的仓库生效,就是说如果你当前项目已经

2021-08-23 09:23:50 601

原创 中间件的原理解析

1、compose函数用过redux或者对Koa、Express等有点了解的同学应该都听过中间件这个名词,它可以让我们通过插件的形式对原本的代码执行流程进行安全的包装。其中最核心的思想就是组合函数compose,如下:// 代码摘自reduxconst compose = function(...fns){ // 没有传入函数参数,就返回一个默认函数 if(fns.length == 0){ return (args) => args } // 只

2021-05-31 09:23:55 733

原创 一键下载网页所有图片(含dataurl格式图片)

无意间接触到一款浏览器插件,

2021-01-16 17:42:51 2229

原创 WebSocket学习笔记

1、什么是WebSocket定义:WebSocket是一种区别于HTTP协议的通信协议,可在单个TCP连接上进行全双工通信。主要功能:提供客户端和服务端的双向数据推送应用场景:实时弹幕、股票、在线聊天等特点:握手阶段采用 HTTP 协议。数据格式轻量,性能开销小。客户端与服务端进行数据交换时,服务端到客户端的数据包头只有2到10字节,客户端到服务端需要加上另外4字节的掩码。而HTTP请求每次都需要携带完整头部。更好的二进制支持,可以发送文本,和二进制数据没有同源限制,客户端可以与任意

2020-11-06 21:06:18 844

原创 带你搞懂浏览器缓存

1、缓存顺序当依次查找缓存且都没有命中的时候,才会去请求网络。浏览器缓存机制的优先级排列如下:Service WorkerMemory CacheDisk CachePush Cache1.1Service WorkerService Worker 是运行在浏览器背后的独立线程,一般可以用来实现缓存功能。因为 Service Worker 中涉及到请求拦截,所以必须使用 HTTPS 协议来保障安全。Service Worker 的缓存与浏览器其他内建的缓存机制不同,它可以让我们自由控制

2020-09-19 13:38:52 330

原创 浏览器的多线程与JS单线程

浏览器的进程与线程关于浏览器的进程与线程,不知道有没有和我一样傻傻分不清楚的,看的文章也不少,但总是缺少一个机会吧这些概念串联起来。直到最近需要在公司做一个技术分享,才狠下心来决定非把它弄懂不可。自己也算是有了一些小收获,在这里分享出来,也当成是一个再次总结的过程ヾ(◍°∇°◍)ノ゙。1.浏览器是多进程的1.1基本概念关于进程与线程的基本概念,这里不做过多解释,可以参考阮老师的进程与线程的一个简单解释;可大致理解为,一个进程包含一至多个线程,进程的内存空间可以被改进程内的线程共享;1.2浏览器的进

2020-09-01 23:15:47 420

转载 Redux-saga

1.概述edux-saga是一个用于管理redux应用异步操作的中间件,redux-saga通过创建sagas将所有异步操作逻辑收集在一个地方集中处理,可以用来代替redux-thunk中间件。2.流程ui组件触发action创建函数action创建函数返回一个actionaction被传入redux中间件(被 saga等中间件处理) ,产生新的action,传入reducerreducer把数据传给ui组件显示mapStateToPropsui组件显示3.使用3.1 配置

2020-06-05 11:25:01 244

转载 redux-saga用法

启用import { createStore, applyMiddleware } from 'redux'import createSagaMiddleware from 'redux-saga'import reducer from './reducers'import rootSaga from './sagas'// create the saga middlewareconst sagaMiddleware = createSagaMiddleware()// mount it

2020-06-05 10:49:30 293

原创 文章收录

1.1Vue登录注册,并保持登录状态链接1.1vueX的基本使用之Module链接jQuery源码解析之$().animate()(上)链接

2019-12-24 10:06:02 200

原创 vuex概念理解

01、Statethis.$store.state.count在计算属性中获取const Counter = { template: `<div>{{ count }}</div>`, computed: { count () { return this.$store.state.count } }}mapState 辅助...

2019-12-24 09:57:32 212

原创 React Context 的用法

myContext.jsimport React from 'react'const data ={mydata:'来自MyContext的值'}export const MyContext = React.createContext({ data:data, // 默认值 changeData: (v) => {data.mydata = v},});childre...

2019-12-20 14:09:09 289

原创 ErrorBoundary实用组件

上码import React,{Component} from 'react';class ErrorBoundary extends Component{ constructor(props){ super(props); this.state = {} } componentDidCatch(error,info){ ...

2019-12-19 16:30:50 557

原创 transition-group组件v-move的实现原理(个人理解)

v-move实现的原理是什么?在翻阅了相关源码后,我得出了一点个人见解,欢迎查看!

2019-12-13 17:13:33 1995

原创 事件发布订阅系统

创建subpub(obj)方法订阅消息sub('eventName', fn)发布消息pub('eventName')([可选参数])取消订阅unsub('eventName',[specificFunc])获取所有订阅者消息getList()var store = {}; function subpub(store) { var events = {} //...

2019-12-12 12:20:42 190

原创 mapDispatchToProps的三种方式mapStateToProps

redux中组件实现dispatch的三种方式,以及mapStateToProps

2019-12-11 11:54:49 2166

原创 vue实现分页组件

通过vue实现分页组件。实用、简单、易上手,可根据实际情况灵活调整,复用性较高。

2019-12-09 15:24:20 459

原创 点击图片全屏展示插件

效果图加入代码后点击任意一张图片,即可以全屏方式展示该图片使用DOM结构顶部下入以下代码,然后在包裹图片的容器上设置id为picBox//插入代码 <div class="blackLayer"> <div> <img src="" alt=""> </div> </div>//给图片盒子设置id...

2019-12-02 17:17:45 365

原创 js解决键盘长按输入时会有停顿的问题

长按键盘输入内容时中间会有一个停顿(短暂的),这里的解决办法是通过setInterval来解决

2019-11-28 17:04:58 6709 1

原创 移动端rem具体该怎么使用?

rem是CSS3新增的一个相对单位(相对于根元素),由于是相对单位长度,因此我们每次只需要根据设备大小设定根元素大小即可达到相同视觉效果了。浏览器支持——除IE8以及以下;

2019-10-23 10:24:30 746

原创 实现li列表无缝滚动的插件

封装函数实现li列表的无缝滚动,调用简单,理解容易;欢迎大家品尝!!!!

2019-10-15 12:37:53 1429

原创 js实现sleep功能的几种方式

js实现sleep功能的几种方式: 1.Promise2.Generator3.async4.Es5回调函数

2019-08-13 14:55:24 6394 1

原创 防抖和节流函数详解(立即执行/非立即执行)

1.防抖(立即执行/非立即执行)什么是防抖:一个事件在触发后,设置定时器,若n秒内没有新事件发生,那么执行这个函数,否则定时器清零,重新开始计时。应用每次 resize / scroll 触发统计事件文本输入的验证 (连续输入文字后发送AJAX请求进行验证,验证一次就好)

2019-08-12 15:57:28 8009 4

原创 浏览器常见兼容处理-Js

事件;事件target;事件添加/移除;阻止默认行为 ;阻止冒泡;网页可视区;行外样式;键盘key值;异步请求;滚动条;

2019-08-11 19:56:41 191

转载 Flex笔记

flex笔记

2019-08-05 12:44:21 190

原创 react实现分页组件__带页码

react实现分页组件__带页码组件通过接受props接受total和curPage来输出你需要的分页组件!简单好用,可自行修改内容。

2019-07-23 16:50:22 1828

原创 适合新手看的贪吃蛇

我是学习前端两年半的实习生,喜欢唱跳rap,我为大家带来的舞蹈是贪吃蛇,希望大家喜欢

2019-07-03 11:35:32 230

原创 js实现页面滚动到指定位置触发动画

js实现当页面元素出现在屏幕中时,触发动画

2019-05-08 22:35:30 11949 3

《Node.js实战 in action中文版》_吴海星.pdf

很好的一本node学习入门书籍,希望大家能够一起进步,没积分的也可以单独联系我发你 polaris66tl@gmail.com (备注上:csdn) ps:不要不好意思,脸皮厚才能学到知识,嘿嘿

2019-07-03

空空如也

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

TA关注的人

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