React Hooks
useState 返回一个 state,和一个更新 state 的函数 函数式更新 如果新的 state 需要通过先前的 state 计算得出,可以传递一个函数给 setState,如下: setState((prev) => { return prev + 1; }); 惰性初始 state 如果初始 state 需要通过复杂计算获得,则可以传入一个函数,在函数中计...
useState 返回一个 state,和一个更新 state 的函数 函数式更新 如果新的 state 需要通过先前的 state 计算得出,可以传递一个函数给 setState,如下: setState((prev) => { return prev + 1; }); 惰性初始 state 如果初始 state 需要通过复杂计算获得,则可以传入一个函数,在函数中计...
高阶组件可以做什么? 增强回调和生命周期 增强回调 type Base = { onClick: () => void }; export const withLoggingOnClickWithProps = <TProps extends Base>(Component: ComponentType<TProps>) => { // ...
什么是key属性以及为什么React需要它? 如果存在“key”属性,React 使用它作为在重新渲染期间在其兄弟姐妹中识别相同类型元素的一种方式,也就是说,仅在重新渲染期间和相同类型的相邻元素才需要它。 const Item = ({ country }) => { return ( <button className="country-item"> ...
如果仅仅是用一个变量来保存tiner的ID,会导致无法清除timerID如下: const TimerCount = () => { let [count,setCount] = useState(0) let timer const handleStart =() => { timer = setInterval(() => { setC...
children as a render function const MovingComponent = ({ children }) => { ... return ( <div ...// callbacks same as before > // children as render function with some d...
加载和执行 每个<script>标签初始化下载都会阻塞页面渲染,所以减少页面的<script>标签数量可以起到优化作用,内嵌脚本外链脚本通用,另外HTTP会带来的额外的性能消耗,下载一个100KB的文件比下载4个25KB的文件更快,所以可以通过进行脚本的合并去1、减少<script>标签数量 2、减少HTTP请求带来的消耗(针对外链脚本)。 数据存取 ...
diffuse/base colos/albedo颜色贴图: 漫反射可以简单理解成物体表面固有的颜色 reflection/specular反射贴图:白色全反射黑色不反射(排除金银铜等金属) metalness金属度: 纯白金属 黑色电解质 glossiness光泽度: 材质的粗糙程度 白色光滑,黑色粗糙 roughness粗糙度: 与上面相反 normal蓝色法线 用rgb代表x...
齐次坐标 齐次坐标可以用来区分 (X,Y) 到底是个向量还是个坐标,它不是一个新的坐标系,不是说把二维的变成三维的,它是一种记法。 (x,y,0) 表示一个向量, (x,y,1)表示一个坐标。 点+点=点,点加向量=点,向量+向量=向量,点-点=向量。 引入齐次坐标是为了在发生变换时,其几何意义依然准确。 一个向量平移之后,其结果仍然是这个向量,而一个点平移之后,其值就会发生变化但...
齐次坐标 齐次坐标可以用来区分 (X,Y) 到底是个向量还是个坐标,它不是一个新的坐标系,不是说把二维的变成三维的,它是一种记法。 (x,y,0) 表示一个向量, (x,y,1)表示一个坐标。 点+点=点,点加向量=点,向量+向量=向量,点-点=向量。 引入齐次坐标是为了在发生变换时,其几何意义依然准确。 一个向量平移之后,其结果仍然是这个向量,而一个点平移之后,其值就会发生变化但...
Ray Tracing 2 加速结构 辐射度量学 题外话: GTC(GPU Technology Conference): DLSS(Deep Learning Super Sampling)2.0 https://zhuanlan.zhihu.com/p/116211994 光栅化生成一个 1080p 的图,把它拉大成一张 4K ...