使用form-data的content-type上传文件问题

4 月 12 日
阅读 1 分钟
32
问题当后端需要我们上传文件时,一般会用form-data的类型。接口文档像这样:目标是发出这样一个请求:代码示例 {代码...} 注意不要对formdata进行包装,以下是错误示例: {代码...}

TypeScript泛型在ajax上的应用

3 月 29 日
阅读 2 分钟
58
泛型参数 {代码...} 泛型响应 {代码...} 同时指定请求和响应为泛型 {代码...} 冗余应用应用场景UserResponse和NewsResponse属于冗余的定义。 {代码...} 用泛型去掉UserResponse和NewsResponse的冗余的定义。 {代码...}

数组方法中的slice与toSpliced

3 月 27 日
阅读 1 分钟
81
方法罗列方法是否修改原数组返回值slice否包含摘取元素的新数组toSpliced否不包含被删除元素的新数组slice获取指定位置的元素,然后将这些元素作为数组返回。函数签名:slice([start], [end])start摘取开始位置end摘取结束位置使用示例:浅拷贝 {代码...} start默认为0,end默认为items.length所以在两个参数都不指定的...

react条件几中条件运算方式

3 月 23 日
阅读 1 分钟
82
if else没什么好讲的。 {代码...} 应用场景:-注意事项:-三元运算符二选一渲染。应用场景:在两个候选结果中取一个的情况。 {代码...} 注意事项:避免嵌套,如果发生嵌套,那说明你的代码需要重构。逻辑与(&&)只期望条件为真时渲染。jsx不会渲染boolean值,所以如果为false,就什么都不渲染。应用场景:只有一个候选...

关于Github Pages部署SPA应用后,刷新路由404的问题

3 月 11 日
阅读 2 分钟
82
原理:当Github Pages发现无法处理的前端路由时,会跳转至404.html,此时我们在404.html利用meta的自动重定向能力,跳转至index.html,从而再次能够接管前端路由。

代码优化记录

2 月 21 日
阅读 3 分钟
340
使用reduce时,避免对accumulator执行副作用 {代码...} 去掉副作用 {代码...} 优化对一份数据的多次遍历 {代码...} 使用reduce来改进: {代码...} 去掉副作用代码: {代码...} 对find的结果进行判空 {代码...} 上面的代码中,我们在find的返回值上直接访问属性,会有可能导致异常。因为在没有找到目标时,find的返回值会...

fetch的使用记录

2 月 21 日
阅读 1 分钟
256
如何用fetch发起post请求下面是一个用fetch发起的post请求示例: {代码...} 注意事项:如何传递post参数?设置Content-Type为application/json将post参数转换为字符串,需要用到JSON.stringify如何解析响应?需要对fetch返回的响应调用json方法。因为fetch返回的是一个Response对象,不能直接读取数据,所以需要对其先调...

对象方法用途记录

2 月 16 日
阅读 1 分钟
549
entries介绍这是一个静态方法,用于将对象转换为数组。该方法接受一个对象,然后返回一个数组,该数组的每个元素为一组对象的键名和键值。 {代码...} 用途用于结合map、filter、reduce等声明式函数进行无副作用的数据加工。下面是对obj进行遍历并统计每个人的合计得分示例: {代码...} Object.keys注意:这是一个静态方法...

数组方法用途记录

2 月 15 日
阅读 1 分钟
287
some接受一个函数,然后some会使用这个函数遍历整个数组,如果该函数至少有一次返回true,则some返回true,否则返回false。

react项目问题记录

1 月 16 日
阅读 3 分钟
744
这是由于useEffect在设计上决定的。useEffect接受一个函数,这个函数返回undefined或者一个函数(用于cleanup)。

js项目接入ts

2023-11-07
阅读 1 分钟
227
第一步 安装依赖yarn add typescript ts-loadertypescript核心ts-loader配合webpack编译第二步创建tsconfig.json文件第三步在webpack配置文件中添加ts-loader配置 {代码...}

event.target VS event.currentTarget

2023-10-25
阅读 1 分钟
286
定义event.target为触发事件的元素。event.currentTarget为绑定事件处理函数的元素。示例代码 {代码...} 事件处理程序绑定在div上当我们点击div时:event.target为divevent.currentTarget为div。当我们点击button时:event.target为button。event.currentTarget为div。 {代码...} 事件处理程序绑定在button上当我们点击di...

竞态条件(Race condition)

2023-10-18
阅读 2 分钟
397
什么是竞态条件?当你的程序依赖正确的响应顺序,但响应的顺序又无法保证时,可能会导致意外的结果,这就是竞态条件。举个用户界面的例子:在上图中,分别点击科技和生活tab时,期望能够展示对应的数据。我们来设想如下情况:点击科技按钮(高亮科技按钮)(数据2秒后返回)点击生活按钮(高亮生活按钮)(数据1秒后返回...

encodeURI VS encodeURIComponent

2023-09-24
阅读 3 分钟
755
因为网络标准RFC1738做了硬性规定,只有字符和数字以及一些规定内的特殊符号,才可以不经过编码用于url,换言之就是,如果你的url中包含了规定之外的符号,那它就是非法的url, 无法被服务器解析,也就无法访问到你想要的网络资源。为了解决这个问题,js就提供了encodeURI和encodeURIComponent来给这些规定之外的符号进行...

微信内h5页面打开小程序

2021-07-30
阅读 1 分钟
4.2k
由于wx-open-launch-weapp设置样式比较困难,故放弃对其设置样式,将wx-open-launch-weapp作为一个透明的占位元素,撑满父元素,然后在父元素上设置想要的样式,也能达到预期的功能。

文件导出

2021-06-11
阅读 3 分钟
2.8k
在后台管理系统中,我们经常会遇到文件导出这个需求,下面,我将几种常见的导出方式做一个简单的介绍,让大家在以后遇到此类需求时,能够切合实际情况,采取相对合理的方式。

vscode的jsconfig.json和tsconfig.js

2021-04-01
阅读 1 分钟
4.4k
如果你的项目是纯js,那么使用jsconfig.json就够了,但如果你的项目用了ts,那就必须用tsconfig.json。(tsconfig.json可以同时支持js和ts项目)

react组件解耦

2019-02-14
阅读 2 分钟
3.9k
观察上面的List组件,我们会发现ListItem被耦合在了List内部,当我们需要更换不同的ListItem时,需要深入到List中进行修改,这会引入风险。

javascript中的this, call, apply

2017-04-20
阅读 1 分钟
2k
不同场景中的this处于被对象调用的方法中处于普通函数中在构造函数中this的指向简单来说就是:谁调用,就指向谁在对象的方法中 {代码...} 调用者是obj,按照上面的简单规则谁调用就指向谁所以这里的this就是obj。在普通函数中 {代码...} 全局环境下所有的属性方法都属于window,所以这里其实隐藏了一个window,也是windo...

冒泡排序算法

2017-04-20
阅读 3 分钟
2.4k
由于外部循环的i变量每次进入内部循环都不会改变,也就是arr[i]的值进入内部循环后,都会以自身与arr[j](也就是整个数组的所有元素)比较一轮,结果是小于arr[i]的数值都会被放到数组的开头

javascript中的apply和call方法

2016-07-19
阅读 1 分钟
650
作用用于改变函数内部this的指向。示例函数默认规则:谁调用函数,this就指向谁。 {代码...} 借助call或apply可以改变这种默认行为 {代码...} 应用场景修正事件回调中的this {代码...} {代码...} 上面的this.id为btn,符合我们的预期。下面引入一个新的情况,我们需要在调用一个额外的函数: {代码...} 这时,this的指向...