摘要:
import * as THREE from '../libs/build/three.module.js'; import { OrbitControls } from '../libs/jsm/controls/OrbitControls.js' import { CSS2DRenderer, 阅读全文
摘要:
1.脚手架 vue-cli基于webpack封装,生态非常强大,可配置性也非常高,几乎能够满足前端工程化的所有要求。缺点就是配置复杂,甚至有公司有专门的webpack工程师专门做配置,另外就是webpack由于开发环境需要打包编译,开发体验实际上不如vite。 vite开发模式基于esbuild,打 阅读全文
摘要:
原型为函数独有,通过new继承, 原型链大家都有,查找规则:从当前实例查找再去原型链查找 实例的原型链指向构造函数的prototype 最上面是object 关于 Vue 编译原理这块的整体逻辑主要分三个部分,也可以说是分三步,这三个部分是有前后关系的: 第一步是将 模板字符串 转换成 elemen 阅读全文
摘要:
1数据是不是可变的 2通过js操作一切还是各自的处理方式 react的思路是all in js,通过js来生成html,所以设计了jsx,还有通过js来操作css,社区的styled-component、jss等, image.png vue是把html,css,js组合到一起,用各自的处理方式,v 阅读全文
摘要:
1.rem搭配CSS预处理器使用 这里我就用vue+less来简单操作一下,具体可以封装到底层,这里暂且演示一下原理。 这里推荐一下使用我的自制脚手架 (songyao-cli) 来快速生成一个vue项目,安装完依赖后,开始配置less. /rem.less/ @device-width: 375; 阅读全文
摘要:
1.性能优化 1.shouldComponentUpdate 在render调用之前会调用shouldComponentUpdate,不建议在 shouldComponentUpdate() 中进行深层比较或使用 JSON.stringify()。这样非常影响效率,且会损害性能。 该方法有两个参数: 阅读全文
摘要:
生命周期 插槽 组件中间内容用this.props.children访问 是否组件更新 shouldcompontsupdata(props,newstatus){ return false; } 父组件更新 componentswillreceiveprops(nextprop)周期更新 在这个生 阅读全文
摘要:
1.通过父组件当中间人方式,子传父再传子 2.通过发布订阅模式 obj={ list:[], sub(callback){ list.push(callback) }, pub(){ list.foreach((callback)=>{ callback() }) } } obj.sub(()=>{ 阅读全文
摘要:
同步逻辑中,setState异步更新,同步更新会合并为一次更新 异步逻辑中,setState同步更新 this.setState({ data:data,()=》{ } }) 在回调函数里面了解到状态更新了 阅读全文
摘要:
react中ref的3种绑定方式 方式1: string类型绑定 类似于vue中的ref绑定方式,可以通过this.refs.绑定的ref的名字获取到节点dom 注意的是 这种方式已经不被最新版的react推荐使用,有可能会在未来版本中遗弃 方式2: react.CreateRef() 通过在cla 阅读全文