自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 vue3+node+mongoose基本功能

node+mongoose后端接口vue3前端调用。

2023-11-24 07:34:57 69 1

原创 node后端配置

首先下载 express deom。

2023-11-16 20:03:37 45 1

原创 upload上传本地图片(前后端)

使用React vant组件来进行图片上传 以下是一个基本的代码 里面的内容可以自我修改。第三步 在app.js文件中配置上传图片的虚拟路由以及路径。第二步:在后端中创建一个upload文件夹,用来存放照片。第一步:在终端输入 npm i multiparty。最后在项目中引入 multiparty。这是图片上传的接口 可以参考。上述就是后端总体的配置。

2023-09-12 09:39:16 534 1

原创 React相关知识总结

使用命名空间(Namespace):在定义action-type常量时,可以为每个模块或组件添加一个命名空间前缀,以确保唯一性。例如,可以使用的格式来定义action-type常量,其中moduleName是模块或组件的名称。使用统一的命名规范:在整个应用中使用统一的命名规范来定义action-type常量,以确保不同模块或组件之间的唯一性。例如,可以使用全大写字母和下划线的方式定义常量,如或。使用工具库:可以使用第三方的工具库来帮助管理和生成唯一的action-type常量。例如,可以使用。

2023-08-19 07:33:23 136

原创 9.redux中同步action与异步action最大的区别是什么?

异步action通常是一个函数,该函数会在内部执行异步操作,如发送网络请求、获取数据等。在异步操作完成后,异步action可以再次调用`dispatch`函数来发起一个同步action,该同步action会被传递给reducer进行处理。在异步action的情况下,reducer的执行时机是由异步操作的结果决定的,而不是立即执行。总结来说,同步action会立即触发reducer的执行并更新state,而异步action需要通过中间件进行处理,内部执行异步操作后再通过同步action来更新state。

2023-08-18 14:56:22 130 1

原创 8.redux本来是同步的,为什么它能执行异步代码?实现原理是什么?中间件的 实现原理是什么?

中间件的实现原理是,它在Redux的dispatch过程中拦截action,并可以对action进行处理、修改或者发起新的action。2. 应用中间件:通过调用Redux的`applyMiddleware`函数,将中间件函数作为参数传递给它,并将返回的函数作为Redux store的enhancer。5. 发起新的action:当异步操作完成后,中间件可以根据异步操作的结果,发起新的action来更新Redux的状态。4. 执行异步操作:在中间件中,我们可以执行异步的操作,如发送网络请求、获取数据等。

2023-08-18 14:54:55 87 1

原创 7.谈谈你对immutable.js的理解?

当我们修改一个对象时,可能会误修改其他引用该对象的地方。它提供了一系列的函数式操作方法,如`set`、`get`、`update`、`map`、`filter`等,用于对不可变数据进行操作和转换。总而言之,Immutable.js提供了一种更安全、可靠、高效的数据管理方式,特别适用于复杂的应用程序中,可以提升开发效率、减少错误,并提供更好的性能和可维护性。1. 持久化数据结构:Immutable.js的数据结构是持久化数据结构,意味着当进行数据修改时,原有的数据不会被直接修改,而是会返回一个新的数据结构。

2023-08-18 14:53:49 77 1

原创 6.React组件之间如何通信?

3. 全局状态(State Management):当组件之间的通信变得更加复杂时,可以使用一些状态管理库(如Redux、MobX、React Context API等)来管理全局状态。父组件可以将需要传递的数据作为props属性传递给子组件,子组件可以通过props来接收并使用这些数据。这些机制可以在不同的组件之间建立一种松耦合的通信方式,组件可以订阅和发布事件或消息,从而实现相互之间的通信。根据具体的需求和场景,可以选择合适的通信方式来实现组件之间的通信。

2023-08-18 14:52:43 49 1

原创 5.React的props.children使用map函数来遍历会收到异常显示,为什么?应该如何遍历?

2. 使用`React.Children.map`:`React.Children.map`是React提供的一个工具函数,它会自动处理`props.children`的不同情况,并对其进行遍历。当使用`map`函数遍历`props.children`时,如果`props.children`只有一个子元素且该子元素不是一个数组,会报错"TypeError: props.children.map is not a function"。

2023-08-18 14:51:25 149 1

原创 4.react新出来两个钩子函数是什么?和删掉的will系列有什么区别?

1. `useEffect`:`useEffect`可以在函数组件中执行副作用操作,比如订阅事件、网络请求、修改DOM等。它在组件渲染完成后执行,类似于`componentDidMount`、`componentDidUpdate`和`componentWillUnmount`的结合体。2. `useContext`:`useContext`用于在函数组件中访问React的上下文(context)。- 新的钩子函数是基于函数组件的,而“will”系列的生命周期方法是基于类组件的。

2023-08-18 14:48:10 75 1

原创 3.说说React中的虚拟dom?在虚拟dom计算的时候diff和key之间有什么关系?

虚拟DOM的工作原理是,当组件的状态发生变化时,React会创建一个新的虚拟DOM树,并将其与之前的虚拟DOM树进行比较。通过比较,React可以找出需要更新的部分,并只更新这些部分,而不是直接操作真实的DOM。diff算法是React用来比较新旧虚拟DOM树的算法,它通过遍历虚拟DOM树的节点,找出需要更新的节点,然后进行相应的操作。合理使用key属性可以提高React应用的性能,避免不必要的渲染,同时diff算法可以快速而准确地找出需要更新的节点,优化了React的渲染过程。

2023-08-18 14:46:38 75 1

原创 2.React生命周期中的shouldComponentUpdate有什么作用?

在该方法中,我们可以根据新的props和state与当前的props和state进行比较,决定是否应该继续进行渲染。通过实现shouldComponentUpdate方法,我们可以在必要的情况下避免不必要的重新渲染,提高React应用的性能。需要注意的是,从React 16.3开始,一些生命周期方法被标记为过时,推荐使用新的生命周期方法替代。- static getDerivedStateFromProps:在组件接收新的props时调用,用于根据新的props更新state。

2023-08-18 14:40:14 157 1

原创 1.props和state相同点和不同点?render方法在哪些情况下会执行?

state:state主要作用是用于组件保存,控制及修改自己的状态,它只能在constructor中初始化,state是可以被改变的,state放改动的一些属性,比如点击选中,再点击取消,类似这种属性就放入带state中,注意:没有state的叫做无状态组件,多用props少用state,多写无状态组件,注意:修改state的值时,必须通过调用setState方法,当我们调用this.setState方法时,React会更新组件的数据状态,并且重新调用render方法。render方法在哪些情况下会执行?

2023-08-18 14:17:46 88 1

原创 前端面试题

React事件机制总结如下:- React 上注册的事件最终会绑定在document这个 DOM 上,而不是 React 组件对应的 DOM(减少内存开销就是因为所有的事件都绑定在 document 上,其他节点没有绑定事件)- React 自身实现了一套事件冒泡机制,所以这也就是为什么我们 event.stopPropagation()无效的原因。- React 通过队列的形式,从触发的组件向父组件回溯,然后调用他们 JSX 中定义的 callback。

2023-08-14 10:05:38 26

原创 什么是React

react 类组件使用一个名为 render() 的方法或者函数组件return,接收输入的数据并返回需要展示的内容。帮助我们将界面成了各个独立的小块,每一个块就是组件,这些组件之间可以组合、嵌套,构成整体页面。:React,用于构建用户界面的 JavaScript 库,只提供了 UI 层面的解决方案。使用虚拟 DOM 来有效地操作 DOM,遵循从高阶组件到低阶组件的单向数据流。遵循组件设计模式、声明式编程范式和函数式编程概念,以使前端应用程序更高效。单向响应的数据流会比双向绑定的更安全,速度更快。

2023-08-14 09:32:40 34

原创 js类型检验的方式

例如,Object.prototype.toString.call(10) 返回 "[object Number]",Object.prototype.toString.call("hello") 返回 "[object String]"。这种方式可以判断基本类型和复杂类型。typeof 和 Object.prototype.toString() 的结合使用:可以先使用 typeof 进行基本类型的判断,对于复杂类型则使用 Object.prototype.toString() 进行更准确的判断。

2023-08-07 08:51:59 44

原创 事件循环的理解 以及应用理解

理解:事件循环是JavaScript中用于处理异步操作的一种机制,JavaScript是一门单线程语言,意味着同一时间内只能做一件事情,但是这并不意味着单线程就是阻塞,而实现单线程非阻塞的方法就是事件循环,它负责管理任务队列,并按照特定的顺序执行这些任务。

2023-08-07 08:51:00 48

原创 闭包的理解 优点缺点以及应用场景

使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。在js中,函数即闭包,只有函数才会产生作用域的概念。闭包 的最大用处有两个,一个是可以读取函数内部的变量,另一个就是让这些变量始终保持在内存中。闭包的另一个用处,是封装对象的私有属性和私有方法。应用场景:封装私有变量和方法 ,事件处理程序 ,异步编程 ,延长变量和生命周期。坏处: 就是消耗内存、不正当使用会造成内存溢出的问题;好处:能够实现封装和缓存等;

2023-08-07 08:23:52 70

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除