前端面试题
天林丶
12年工作经验、资深程序员、精通Visual Basic.NET、C++、Java、PHP、Objective-C、JavaScript、Go
、C语言、Python、R语言等多门语言,全栈型技术人才。
展开
-
面试题总结
因为在项目中,可能不同组件会有相同的功能,比如控制元素的显示和隐藏,如果他们的变量和规则也完全相同的话,就可以把这个功能单独提取出来,放在`mixin.js`中,再引入,就可以实现一样的功能了。`render`函数中的`jsx`语句会被编译成我们熟悉的js代码,在`render`过程中,`react`将新调用的`render`函数返回的树与旧版本的树进行比较,这一步是决定如何更新 DOM 的必要步骤,然后进行 `diff` 比较,更新dom树。在类组件中`render`函数指的就是`render`方法;原创 2023-02-20 21:18:37 · 76 阅读 · 0 评论 -
说说你对fiber架构的理解?解决了什么问题?
dom diff树变成了链表,一个dom对应两个fiber(一个链表),对应两个队列,这都是为找到被中断的任务,重新执行。为每个增加了优先级,优先级高的任务可以中断低优先级的任务。然后再重新,注意是重新执行优先级低的任务。增加了异步任务,调用requestIdleCallback api,浏览器空闲的时候执行。原创 2023-02-20 21:15:42 · 47 阅读 · 0 评论 -
说说Connect组件的原理是什么?
真正连接Redux和React,它包在我们的容器组件的外一层,它接收上面的Provider提供的store里面的state和dispatch,传给一个构造函数,返回一个对象,以属性形式传给我们的容器组件。接受Redux的store作为props,通过。在原本应用组件上包裹一层,使原来整个应用成为。传递给子孙组件上的connect。connect是连接。原创 2023-02-20 21:15:54 · 68 阅读 · 0 评论 -
说说React生命周期中有哪些坑?如何避免?
二、componentWillMount 在 React中已被标记弃用,不推荐使用,主要原因是新的异步渲染架构会导致它被多次调用。三、componentWillReceiveProps 同样被标记弃用,被 getDerivedStateFromProps 所取代,主要原因是性能问题。如果没有添加错误边界处理,当渲染发生异常时,用户将会看到一个无法操作的白屏,所以一定要添加。同样是由于新的异步渲染机制,而被标记废弃,不推荐使用,原先的逻辑可结合。原创 2023-02-20 21:12:04 · 124 阅读 · 0 评论 -
前端面试题总结!
state主要作用是用于组件保存,控制及修改自己的状态,它只能在constructor中初始化,state是可以被改变的,state放改动的一些属性,比如点击选中,再点击取消,类似这种属性就放入带state中,注意:没有state的叫做无状态组件,多用props少用state,多写无状态组件,注意:修改state的值时,必须通过调用setState方法,当我们调用this.setState方法时,React会更新组件的数据状态,并且重新调用render方法。用户可以节省时间,提高速度。转载 2023-02-18 08:28:52 · 86 阅读 · 0 评论