react usememo memo vs
C++调试方法总结(VS Code & VS & dbg)
一、 VS Code C++程序调试 1.1 配置C++运行环境 安装C/C++插件后打开C++设置界面: 选择编译器、c和c++标准,以及inteliSenseMode之后会在当前.vscode目录下生成一个c_cpp_properties.json文件,打开后如下所示: linux window ......
React - shouldComponentUpdate细化无效更新
import React, { Component } from 'react' import ReactDOM from 'react-dom/client' import { nanoid } from 'nanoid' const root = ReactDOM.createRoot(docu ......
react usePersistFn
import {useRef,} from 'react';function usePersistFn(fn) { const fnRef = useRef(fn); fnRef.current = fn; const persistFn = useRef(); if (!persistFn.cur ......
运行vs开发的vue.js项目
开发好的vue.js项目,如何运行?参考如下步骤: #1 npm install -g 项目缺失的组件包全部补全。 #2 npm run serve vuejs-app1@0.1.0 serve SET NODE_OPTIONS openssl-legacy-provider && vue-cli- ......
React 的学习笔记一 (未完结)
一、React 是什么 React 是一个声明式,高效且灵活的用于构建用户界面的 JavaScript 库。使用 React 可以将一些简短、独立的代码片段组合成复杂的 UI 界面,这些代码片段被称作“组件”。 1.1、React的优点 采用组件化模式,声明式编程( react是面向数据编程,不需要 ......
Argon creative-tim UI with create-react-native-app
React Native Elements开发环境 & 生成项目 & 虚拟机调试 & 本地生成APK档 & 虚拟机运行APK档 1.0 Argon creative-tim UI https://demos.creative-tim.com/argon-pro-react-native/?_ga=2 ......
VS Code日常使用-shell编程工具
个人多年经验,shell没有自己专用的IDE,使用vim开发,对于新手而言不太友好,那如何高效快速书写shell脚本?合适的工具就显得尤为重要,本人比较推荐的就是VS Code。里面有比较成熟的插件,对于新人而言,非常方便。 VS Code 官网: https://code.visualstudio ......
Flutter、UniApp、Taro和 React Native 对比分析
Flutter、UniApp 和 React Native 都是现代的跨平台移动应用开发框架,它们都有自己的优势和适用场景。以下是它们的对比分析: Flutter Flutter 是一个由 Google 推出的移动应用开发框架,使用 Dart 语言编写。Flutter 具有高度的可定制性和丰富的 U ......
react学习笔记
https://www.bilibili.com/video/BV1jg4y1x7yD/?spm_id_from=333.337.search-card.all.click&vd_source=caabcbd2a759a67e2a3de8acbaaf08ea ......
vs2022 中项目自动包含bin和obj文件夹
问题描述 最近在vs2022中发现项目显示了bin和obj的文件夹,如下图所示,想要取消它。 解决方法: 在vs2022中菜单栏的“项目” - “显示所以文件”点击即可 ......
在 WSL 中的 Ubuntu 安装 VS Code
在 WSL 中的 Ubuntu 安装 VS Code 可以按照以下步骤进行: 在 WSL 终端中更新软件包。 复制代码 sudo apt update && sudo apt upgrade 下载并安装 GPG 密钥。 复制代码 wget -qO- https://packages.microsof ......
React 防抖(Debounce)Hook
防抖动 (debounce)是常见的需求,那么如何搭配 React Hooks 实现防抖动呢,下面演示两种方案。 方案一 副作用防抖 /** * * @param {React.EffectCallback} fn * @param {React.DependencyList} deps * @pa ......
react+echarts出现“There is a chart instance already initialized on the dom.”
写了一个关于echatrs组件,报错dom重复 配置信息从props拿 let chart; useEffect(() => { if (chart) { updateChartView(); }else{ chart = echarts.init(dom.current) updateChartV ......
react循环与条件判断
react没有语法糖,循环和条件判断都是通过原生js来实现 1. 条件判断 // 三元表达式 const getDiv = (flag)=>{ return ( <div>XXX</div> {flag?<div>条件1</div>:<div>条件2</div>} ) } ... // if判断 c ......
vue/react关与key的面试题
虚拟dom中key的作用 当状态中的数据发生改变时,react会根据新数据生成新的虚拟dom,随后react进行新虚拟dom与旧虚拟dom的diff算法比较,比较规则如下: 1.旧虚拟dom找到了与新虚拟dom相同的key a.若虚拟dom中的内容没变,则使用之前的真实dom b.若虚拟dom中的内 ......
【笔记】electron + react + antd
electron Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Li ......
React 限制 Props 和 State 类型
下面是 Component 的接口,P 代表 Props、S 代表 State。 interface Component<P = {}, S = {}, SS = any> extends ComponentLifecycle<P, S, SS> { } 所以,在 tsx 中写两个类型进行约束就可以 ......
react项目中聊天界面新增对话自动滚动到底部
class组件写法1 class Messages extends React.Component { const messagesEndRef = React.createRef() componentDidMount () { this.scrollToBottom() } componentD ......
Windows中编译OpenSSL(VS中实现)
下载openssl 地址(https://github.com/openssl/openssl#download) 打开VS命令行工具这将会设置 nmake.exe、cl.exe 等所需的环境变量。(不建议直接使用cmd命令行) 切换目录至下载的openssl 输入如下命令: perl Config ......
react的diff算法
diff策略 React用 三大策略 将O(n^3)复杂度 转化为 O(n)复杂度 策略一(tree diff): Web UI中DOM节点跨层级的移动操作特别少,可以忽略不计。 策略二(component diff): 拥有相同类的两个组件 生成相似的树形结构, 拥有不同类的两个组件 生成不同的树 ......
传统架构 vs 云原生架构,谈谈为什么我们需要云原生架构?
传统架构 vs 云原生架构,谈谈为什么我们需要云原生架构? 云原生架构是什么 回顾过去十年,数字化转型驱动着技术创新和商业元素的不断融合和重构,可以说,现在已经不是由商业模式决定采用何种技术架构,而是由技术架构决定企业的商业模式。所以无论是行业巨头还是中小微企业都面临着数字化转型带来的未知机遇和挑战 ......
Kubernetes 学习总结(19)—— Kubernetes 集群管理平台如何选择?Rancher vs KubeSphere
Kubernetes 学习总结(19)—— Kubernetes 集群管理平台如何选择?Rancher vs KubeSphere 前言 Kubernetes(K8s)集群管理平台都是基于 Kubernetes 提供功能,可以说他们是在 K8s 的基础上封装了一层更为友好的操作方式。他们都是为了降低 ......
【个人首测】百度文心一言 VS ChatGPT GPT-4
昨天我写了一篇文章GPT-4牛是牛,但这几天先别急,文中我测试了用GPT-4回答ChatGPT 3.5 和 Notion AI的问题,大家期待的图片输入也没有出现。 昨天下午百度发布了文心一言,对标ChatGPT,录屏+无实机演示让百度股价暴跌。但是晚上百度就开放了个人的体验申请 https://y ......
2023 年最新最全的 React 面试题
React 作为前端使用最多的框架,必然是面试的重点。我们接下来主要从 React 的使用方式、源码层面和周边生态(如 redux, react-router 等)等几个方便来进行总结。 1. 使用方式上 这里主要考察的是,在开发使用过程中,对 React 框架的了解,如 hook 的不同调用方式得 ......
monorepo实践:yarn workspace + vite + typescript + react
前言 最近需要用到多包管理 monorepo 开发新项目,所以提前预研一下项目搭建。 monorepo(monolithic repository)是一种项目架构,就是用一个仓库管理多个项目(应用,库),react和babel的源码仓库都是用这种方式在管理。 优缺点略过,可以参考:精读《Monore ......
MAC 如何配置 PCL 库并在 VS Code 中使用
MAC 如何配置 PCL 库并在 VS Code 中使用 首先,让我们简单介绍一下。PCL(英语:Point Cloud Library)是一个开源的算法库,用于处理点云和计算机视觉中的三维几何过程。PCL包含点云滤波、特征估计、三维重建、点云配准、模型拟合、目标识别和分割等算法。每个模块都由一个更 ......
玫瑰花变蚊子血,自动化无痕浏览器对比测试,新贵PlayWright Vs 老牌Selenium,基于Python3.10
也许每一个男子全都有过这样的两个女人,至少两个。娶了红玫瑰,久而久之,红的变了墙上的一抹蚊子血,白的还是床前明月光;娶了白玫瑰,白的便是衣服上沾的一粒饭黏子,红的却是心口上一颗朱砂痣。--张爱玲《红玫瑰与白玫瑰》 Selenium一直都是Python开源自动化浏览器工具的王者,但这两年微软开源的Pl ......
react 高效高质量搭建后台系统 系列 —— 结尾
其他章节请看: react 高效高质量搭建后台系统 系列 尾篇 本篇主要介绍表单查询、表单验证、通知(WebSocket)、自动构建。最后附上 myspug 项目源码。 项目最终效果: 表单查询 需求:给角色管理页面增加表格查询功能,通过输入角色名称,点击查询,从后端检索出相应的数据。 效果如下: ......
react 高效高质量搭建后台系统 系列 —— 前端权限
其他章节请看: react 高效高质量搭建后台系统 系列 权限 本系列已近尾声,权限是后台系统必不可少的一部分,本篇首先分析spug项目中权限的实现,最后在将权限加入到我们的项目中来。 spug 中权限的分析 权限示例 比如我要将应用发布模块的查看权限分给某用户(例如 pjl),可以这样操作: 在角 ......
Jest + React 单元测试最佳实践
我们是袋鼠云数栈 UED 团队,致力于打造优秀的一站式数据中台产品。我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值。 前言 单元测试是一种用于测试“单元”的软件测试方法,其中“单元”的意思是指软件中各个独立的组件或模块。开发者需要为他们的代码编写测试用例以确保这些代码可以正常使用。 在 ......