摘要:
http://www.yanhuangxueyuan.com/threejs/docs/index.html three.js是基于WebGL做的一层封装,本身CV的内容较少 阅读全文
摘要:
vue文件--template部分 <template> ... <draggable v-model="dragList" v-bind="{ ...dragConfig }" @add="handleNodeAdd" > <div v-for="(sublist, index) in dragL 阅读全文
摘要:
目前 create-react-app 已原生支持typeScript , 创建ts项目:create-react-app yourProgramName --template typescript 然后直接根据README.md的提示操作 阅读全文
摘要:
语法糖:官方内置封装的一些快捷操作 场景:判断属性是否存在 const target = obj.person ? obj.person.name : '' 语法糖: obj.person?.name 场景:对象的属性key字符串想要用表达式给出 var obj = { ['a'+'b'] : 'a 阅读全文
摘要:
统一导入导出:可以将统一目录下的多个可导出文件统一导出 在需要导入的地方可通过解构导入即可 常见导出结构 // xxx.js export const Aa = "a" export const Bb = 111 export default = [1,2,3] 相当于 // import {} f 阅读全文
摘要:
antd Paragraph可以提供展开的功能,以下在其基础封装一个展开后可以收起的组件 import React, { ReactNode, useState, useEffect } from 'react'; import { Typography, Tooltip } from 'antd' 阅读全文
摘要:
为什么要做移动端适配? 我们开发使用px(CSS pixel)的是逻辑像素,以至于在不同分辨率的设备上同一个UI设计图展示效果会被伸缩变形,所以需要做移动端适配 通过历史进程进一步认识! 早期诺基亚板砖机时代,样式直男单一、设备少(哪种设备需要即去重新开发一套即可),此时的设备像素比被通俗地固定在1 阅读全文
摘要:
这里主要分析在函数式react中的优化,类组件有生命周期函数定义较明确 React的核心特征之一是单向数据流(props自上往下流) 这会导致一个问题:当父组件state更新后,其自身及其所有children(不论是否接收props)都会进行更新,但向下传递的props部分并未发生改变,我们应当让这 阅读全文
摘要:
横看hash竖看history 只缘身在此客户端 阅读全文
摘要:
主要分析函数式组件 ####useRef(/createRef) useRef 和 createRef 前者每次渲染都是同一个,后者则是每次渲染都会新建。两者的功能都是类似于 Vue创造一个 ref 对象,其 current属性会指向 DOM 节点。 下面谈一下 forwardRef 这个 hook 阅读全文
摘要:
GIT 常见基础操作 .gitignore文件 选择哪些文件不需要git进行上传(版本管理,前端项目一般是nodemodules文件 git reset回退到历史版本 git log --pretty=oneline : 找一个需要回到的版本hash号 git reset --hard 版本hash 阅读全文
摘要:
[ 10, 12, 14, 16, 8 ].sort() // 输出 :[10, 12, 14, 16, 8] 查看 sort源码 :不传参的话会逐个比较 ASCLL 值,而数字8的ASCLL值大于1的ASCLL值。修改:[ 10, 12, 14, 16, 8 ].sort((a,b)=> a-b) 阅读全文
摘要:
https://juejin.cn/post/6844903734464495623 ES6面试 为什么选择 ES6 ? ES6是新一代的 JS 语言标准,规范了JS的使用标准(var标量提升)、新增了 JS 原生方法更加优雅 ES5、ES6、ES2015区别 ES2015特指在2015年发布的新一 阅读全文
摘要:
初次创建二维数组:let dp = new Array(5).fill(new Array(3).fill(0)) 结果发现改动其中某一行,其余行会同步变化: dp[2][2] = 1 // console.log(dp) // 0: (3) [0, 0, 1] // 1: (3) [0, 0, 1 阅读全文
摘要:
###节流、防抖 防抖 <div> <input type="text" id="input"> </div> <script> listenInput = ()=>{ console.log('输入结束,调用接口'); } function debounce(fn , wait){ let sta 阅读全文
摘要:
阅读全文
摘要:
导入详解 导出详解 导入详解 前端完成 导入上传excel文件(一般只会向后端发送文件,这里允许添加额外参数) <!-- 导入对话框 --> <el-dialog :visible.sync="isVisible" title="选择excel文件" width="30%" @close="chan 阅读全文
摘要:
删除结点分4中情况: 无左右子节点,直接删除 有左子节点、无右子节点,将左子节点替换到删除结点处 有右子节点、无左子节点,将右子节点替换到删除结点处 有左有右, 选左子树最右结点 或 右子树最左结点替换 function deleteNode(root, key) { if(root null ) 阅读全文
摘要:
基础对象指原型链终点的对象。基础对象的原型是null 默认情况下,事件处理程序在冒泡阶段执行(除非您将useCapture设置为true) JavaScript中只有6个假值:undefined 、 null 、NaN 、0 、'' (empty string) 、false 闭包,外层函数执行完毕 阅读全文