![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
文章平均质量分 80
南城夏季
一路浅行
展开
-
Cannot update during an existing state transition (such as within `render`). Render methods should
react uni的项目中,列表中引入了一个子组件modal,点击展示modal的时候就报这个错。set赋值操作需要在useEffect 中执行。渲染方法应该纯粹是props和state的函数。在现有状态转换期间(例如在。原创 2022-10-25 15:33:08 · 3967 阅读 · 0 评论 -
前端知识体系(7)-react篇
React是一个简单的javascript UI库,用于构建高效、快速的用户界面。它是一个轻量级库,因此很受欢迎。它遵循组件设计模式、声明式编程范式和函数式编程概念,以使前端应用程序更高效。它使用虚拟DOM来有效地操作DOM。它遵循从高阶组件到低阶组件的单向数据流。声明式编程是一种编程范式,它关注的是你要做什么,而不是如何做。它表达逻辑而不显式地定义步骤。这意味着我们需要根据逻辑的计算来声明要显示的组件。它没有描述控制流步骤。声明式编程的例子有HTML、SQL等HTML file// HTML。原创 2022-10-25 11:06:25 · 569 阅读 · 0 评论 -
手写简易vue响应式
【代码】手写简易vue响应式。原创 2022-10-21 16:44:39 · 254 阅读 · 0 评论 -
手撕发布订阅模式 eventBus
1.手撕发布订阅模式 eventBus什么是发布订阅模式比如我们很喜欢看某个公众号号的文章,但是我们不知道什么时候发布新文章,要不定时的去翻阅;这时候,我们可以关注该公众号,当有文章推送时,会有消息及时通知我们文章更新了。上面一个看似简单的操作,其实是一个典型的发布订阅模式,公众号属于发布者,用户属于订阅者;用户将订阅公众号的事件注册到调度中心,公众号作为发布者,当有新文章发布时,公众号发布该事件到调度中心,调度中心会及时发消息告知用户。1-1. eventBus的基本使用我们要实现eventBu原创 2021-12-14 15:06:08 · 1473 阅读 · 0 评论 -
gz面试笔记
字节一面1. 什么是协商缓存与强缓存;详情>2. 讲讲客户端存储的方式有哪些;详情>3. 如何防止脚本获取cookie;详情>4. 讲讲状态码301/302/307的区别;详情>5. 讲讲csrf、xss网络攻击;详情>Content Security Policy>6. 如何解决前端跨域;详情>7. js 事件循环模型;详情>8. 实现模板字符串; function parseString(str, obj) { O原创 2021-09-10 22:59:39 · 1141 阅读 · 0 评论 -
parse函数(vue源码分析4)
parse函数(vue源码分析4)theme: juejinhighlight: arduino-light以下代码和分析过程需要结合vue.js源码查看,通过打断点逐一比对。1. 执行流程我们先梳理下执行流程:// 执行1 (末尾的mount)Vue.prototype.$mount = function ( el, hydrating ) { var ref = compileToFunctions( /原创 2021-07-05 17:20:21 · 1060 阅读 · 0 评论 -
vue 生命周期(vue源码分析2)
vue 生命周期(vue源码分析2)theme: juejinhighlight: arduino-light以下代码和分析过程需要结合vue.js源码查看,通过打断点逐一比对。1.beforeCreate先梳理下执行流程new Vue前,首先会执行initMixin(Vue);,但是此时只是挂载一个_init到Vue上,并没有执行_init。接着,执行 new Vue(引入Vue文件后,html或者main.js最终要有这个入口)进入function Vue(options)再执原创 2021-07-05 17:19:40 · 219 阅读 · 0 评论 -
vue源码分析【1】-new Vue之前
以下代码和分析过程需要结合vue.js源码查看,通过打断点逐一比对。一. 代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="vue.js"></script></head><body> <div.原创 2021-07-05 17:19:02 · 428 阅读 · 1 评论 -
前端知识体系(2)-vue篇
1. 简单说下vuevue是渐变式框架,根据自己的需求添加功能vue数据驱动采用mvvm模式,m是数据层,v是视图层,vm是调度者SPA单页面应用,只有一个页面,加载速率快组件化,复用性强那么,它有什么缺点?vue2底层基于Object.defineProperty实现响应式,这个api本身不支持IE8及以下浏览器csr的先天不足,首屏性能问题(白屏)由于百度等搜索引擎爬虫无法爬取js中的内容,故spa先天就对seo优化心有余力不足(谷歌的puppeteer就挺牛逼的,实现预渲染底层也原创 2021-06-11 18:22:38 · 1378 阅读 · 6 评论 -
前端知识体系(1)-js篇
1 声明1-1 「js函数声明三种方式:」(1) Function()构造器var f =new Function()(2) 函数声明function f (){ console.log(2);}(3) 函数表达式var f = function() { console.log(1); }1-2「js变量声明:」var声明的变量会挂载在window上,而let和const声明的变量不会var声明变量存在变量提升,let和const不存在变量提升(原创 2021-05-28 16:55:25 · 287 阅读 · 2 评论 -
前端知识体系(6)-css篇
以下内容为 css 基础篇(1)1. 如何解决 a 标点击后 hover 事件失效的问题?改变 a 标签 CSS 属性的排列顺序:(爱恨原则)link -> visited -> hover -> activea:link:未访问的样式a:visited:已经访问的样式a:hover:鼠标移上去时的样式a:active:鼠标按下的样式按照这样书写:可以解决 a:link 样式被 a:visited 样式覆盖问题。在 CSS 中,如果对于相同元素针对不同条件的定义原创 2021-05-19 10:39:14 · 359 阅读 · 1 评论 -
前端知识体系(5)-html篇
1. html5新增特性?拖拽释放(Drag and drop) API;语义化更好的内容标签(header, nav, footer, aside, article, section);音频、视频API(audio, video);画布(Canvas) API;地理(Geolocation) API;本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失;sessionStorage 的数据在浏览器关闭后自动删除;表单控件:calendar、date、time、em原创 2021-05-14 16:39:42 · 214 阅读 · 2 评论