01 2024 档案

摘要:空值合并运算符 '??' 与 || 比较 https://zh.javascript.info/nullish-coalescing-operator 或运算符 || 可以以与 ?? 运算符相同的方式使用。 ` let firstName = null; let lastName = null; l 阅读全文 »
posted @ 2024-01-31 19:34 龙陌 阅读(184) 评论(0) 推荐(0) 编辑
摘要:const copyStories = [...stories] 和 let storiesToDisplay = stories.slice(); 两种复制数组的方式,哪种更优雅? 在JavaScript中,const copyStories = [...stories](使用扩展运算符)和 le 阅读全文 »
posted @ 2024-01-31 19:07 龙陌 阅读(11) 评论(0) 推荐(0) 编辑
摘要:代码越精简的越灵活,还是越冗长的越灵活? 代码的灵活性并不完全取决于其精简或冗长的程度。 精简的代码通常更容易阅读、理解和修改,从而在一定程度上提高了灵活性。 短小精悍的代码能够更清晰地表达意图,减少出错的可能性,并且易于维护和扩展。 然而,冗长的代码不等于不灵活。有些情况下,为了实现复杂的功能或者 阅读全文 »
posted @ 2024-01-31 16:37 龙陌 阅读(42) 评论(0) 推荐(0) 编辑
摘要:JSX 虽然看起来很像 HTML,但在底层其实被转化为了 JavaScript 对象,你不能在一个函数中返回多个对象,除非用一个数组把他们包装起来。 这就是为什么多个 JSX 标签必须要用一个父元素或者 Fragment 来包裹。 JSX 最终会被转化为 JavaScript,而 JSX 中的属性也 阅读全文 »
posted @ 2024-01-31 15:36 龙陌 阅读(50) 评论(0) 推荐(0) 编辑
摘要:在JavaScript中,unshift() 是数组对象的一个原生方法,它用于向数组的开头添加一个或多个元素,并将原有的数组元素依次向后移动。 这个方法会改变原始数组本身,同时返回新的数组长度。 在英语中,“unshift”不是一个标准的单词,但我们可以将其拆解为“un-”和“shift”。其中: 阅读全文 »
posted @ 2024-01-31 14:29 龙陌 阅读(3059) 评论(0) 推荐(0) 编辑
摘要:在软件发布中,"Canary" 版本指的是 Canary Channel、Canary Build 或 Canary Release,它通常是指一种高频率更新且可能包含最新(但未经充分测试)功能和改进的版本。 这种版本面向的是愿意接受较高风险并帮助开发者发现潜在问题的用户群体,比如开发者社区、早期尝 阅读全文 »
posted @ 2024-01-31 14:24 龙陌 阅读(825) 评论(0) 推荐(0) 编辑
摘要:React.ReactNode 和 React.ReactElement ,更推荐使用哪个? 在React中,React.ReactNode 和 React.ReactElement 是不同类型,它们适用于不同的场景: React.ReactNode: 类型定义:type ReactNode = R 阅读全文 »
posted @ 2024-01-31 11:54 龙陌 阅读(960) 评论(0) 推荐(0) 编辑
摘要:首先,const [count,setCount] = useState(0) 这种语法是ES6的解构赋值语法。 数组在解构赋值时,按照返回的顺序一一解构,并且可以重新命名: const foo = [1,2,3] const [a,b,c] = foo //a=1,b=2,c=3 而对象在解构赋值 阅读全文 »
posted @ 2024-01-31 09:52 龙陌 阅读(233) 评论(0) 推荐(0) 编辑
摘要:axios实现,在一个极短时间内,请求同一个接口,若传参完全一样,则使用浏览器中的缓存中的上次的值。同时,上次的值应该在指定时间内可以自动清除。请写一个axios适配器。实现上述功能。 在axios中,我们可以利用浏览器的缓存机制(HTTP缓存)来实现这个需求。不过,浏览器的HTTP缓存主要依赖于服 阅读全文 »
posted @ 2024-01-30 12:07 龙陌 阅读(279) 评论(0) 推荐(0) 编辑
摘要:在组织机构管理页面的设计中,左树右表和树形表格都是用来展示具有层级结构数据的有效方式。选择哪种布局取决于具体的使用场景、交互需求和用户体验目标。以下是对两种方式的分析以及最佳实践: 左树右表 优点: 结构清晰:左侧树用于展现层级关系,右侧表格详细展示选中节点下的成员信息或具体属性。 操作方便:用户可 阅读全文 »
posted @ 2024-01-30 11:19 龙陌 阅读(429) 评论(0) 推荐(0) 编辑
摘要:这种代码写法有没有问题? this.$confirm(`是否确认删除名称为"${row.deptName}"的数据项?`) .then(() => { return deleteDept({ deptId: row.id }); }) .then(() => { this.getList(); th 阅读全文 »
posted @ 2024-01-30 11:10 龙陌 阅读(18) 评论(0) 推荐(0) 编辑
摘要:删除表格某一行数据后,刷新列表,当前页码需要重置为1吗?给出最佳实践 在删除表格中某一行数据后,是否需要将当前页码重置为1,取决于具体的应用场景和用户体验需求。以下是一些考量因素以及最佳实践: 考量因素: 数据总量与分页逻辑:如果删除操作导致当前页面的数据不足以填充整个页面(例如,删除了最后一页的最 阅读全文 »
posted @ 2024-01-30 11:03 龙陌 阅读(131) 评论(0) 推荐(0) 编辑
摘要:在左树右表的场景中,用户修改成功后,数据刷新策略取决于以下几个因素: 数据关联性:如果右侧列表中的数据与左侧树形结构紧密相关,即修改了列表项可能影响到左侧树形结构(例如部门或组织架构中,修改一个用户的属性可能导致其所在部门信息变化),则应同步更新左侧的树。 实时性需求:如果系统要求较高程度的数据一致 阅读全文 »
posted @ 2024-01-30 10:59 龙陌 阅读(50) 评论(0) 推荐(0) 编辑
摘要:在前端开发中,点击修改某一行数据并打开弹窗进行回显时,常见的做法有两种: 从点击行上带出修改对象的数据进行回显: 如果列表渲染时,每一行的数据对象已经完整地加载到前端(例如通过一次性获取所有列表数据或者分页加载时将当前页面数据加载至前端),那么可以直接根据用户点击的行数据更新弹窗内的表单控件。 优点 阅读全文 »
posted @ 2024-01-30 10:58 龙陌 阅读(170) 评论(0) 推荐(0) 编辑
摘要:点击重置按钮时,列表的行为取决于具体的应用需求和设计。通常有以下两种常见情况: 回到第一页并清空查询条件:当用户点击重置按钮后,应用会清除所有输入框中的查询条件,并将列表刷新回第一页的数据(通常是默认排序或无条件查询的结果)。这种设计在用户想要从头开始检索数据或者需要查看完整未筛选的列表时较为常用。 阅读全文 »
posted @ 2024-01-30 10:51 龙陌 阅读(521) 评论(0) 推荐(0) 编辑
摘要:内联样式的优点: 使用简单: 使用内联样式的好处就是简单的以组件为中心来实现样式的添加; 扩展方便: 通过使用对象进行样式设置,可以方便的扩展对象来扩展样式; 避免冲突: 样式通过对象的形式定义在组件中,避免了和其他样式的冲突。 ​ 在大型项目中,内联样式可能并不是一个很好的选择,因为内联样式还是有 阅读全文 »
posted @ 2024-01-29 20:51 龙陌 阅读(45) 评论(0) 推荐(0) 编辑
摘要:既可以通过从层次结构更高层组件(如 FilterableProductTable)开始“自上而下”构建,也可以通过从更低层级组件(如 ProductRow)“自下而上”进行构建。在简单的例子中,自上而下构建通常更简单;而在大型项目中,自下而上构建更简单。 为什么这么说呢?合理吗? 在构建React应 阅读全文 »
posted @ 2024-01-29 17:25 龙陌 阅读(13) 评论(0) 推荐(0) 编辑
摘要:为什么不能这样使用 Object.assign(state, { visibilityFilter: action.filter })? 在Redux的reducer中,直接使用Object.assign(state, { visibilityFilter: action.filter })来修改状 阅读全文 »
posted @ 2024-01-29 16:57 龙陌 阅读(12) 评论(0) 推荐(0) 编辑
摘要:React 使用的Redux, action type 抽离成常量好还是直接写死好? 在React与Redux结合进行状态管理时,将action type抽离成常量是一种更推荐的做法,而不是直接写死在代码中。原因如下: 减少错误: 如果直接在action creator或reducer中硬编码字符串 阅读全文 »
posted @ 2024-01-29 16:12 龙陌 阅读(32) 评论(0) 推荐(0) 编辑
摘要:preflight request,即预检请求(Pre-flight Request),是浏览器在发送实际的CORS(Cross-Origin Resource Sharing,跨源资源共享)请求之前进行的一种HTTP OPTIONS方法的请求。当发起一个非简单请求时(例如使用了自定义头信息、PUT 阅读全文 »
posted @ 2024-01-29 12:13 龙陌 阅读(443) 评论(0) 推荐(0) 编辑
摘要:在 for 循环中根据索引删除数组元素时,应当特别注意以下问题: 直接修改循环变量: 在 JavaScript 或其他一些语言中,如果你直接使用 for 循环遍历数组并删除当前迭代的元素,将会导致索引错乱。因为当你删除一个元素后,数组的长度会减小,但循环的索引并不会因此自动调整。 索引越界: 删除元 阅读全文 »
posted @ 2024-01-29 11:49 龙陌 阅读(412) 评论(0) 推荐(0) 编辑
摘要:在编写布局样式时,对于类名的选择如 area、container、wrapper 和 box 等具有语义的名称是非常重要的,它们可以帮助开发者和维护者更好地理解 HTML 结构与功能。以下是一些最佳实践以及何时使用这些类名的理由: container: 通常用于包裹整个页面或特定区块的主要内容容器。 阅读全文 »
posted @ 2024-01-28 18:09 龙陌 阅读(356) 评论(0) 推荐(0) 编辑
摘要:为什么不使用mouseenter和mouseleave 之所以不总是首选mouseenter和mouseleave,是因为它们在某些场景下可能不如mouseover和mouseout通用, 尤其是在需要处理包含复杂嵌套结构的组件时,有时候开发者会更关心鼠标在整个组件及其子元素范围内的进出行为, 这时 阅读全文 »
posted @ 2024-01-27 11:20 龙陌 阅读(12) 评论(0) 推荐(0) 编辑
摘要:在现代浏览器中,使用event.key属性来监听键盘按键是更好的做法。这是因为event.keyCode已经被弃用,并且在不同的浏览器和设备上可能会有不同的行为。 根据MDN文档: event.keyCode: 这个属性已经废弃,不推荐使用,因为它对于同一字符在不同布局下可能返回不同的值。 even 阅读全文 »
posted @ 2024-01-27 10:54 龙陌 阅读(192) 评论(0) 推荐(0) 编辑
摘要:try-catch语句块可以包含finally子句。finally子句是可选的,并且在try-catch语句块中的异常处理完成后始终会执行,无论是否发生异常。 无论异常是否被捕获,finally子句中的代码都会被执行。这使得finally子句非常适合用于释放资源或执行清理操作,以确保代码的一致性和完 阅读全文 »
posted @ 2024-01-24 23:33 龙陌 阅读(37) 评论(0) 推荐(0) 编辑
摘要:撤销(Undo)和恢复(Redo)是常见的编辑操作,它们通常有一些常用的快捷键,但这可能因应用程序和操作系统而有所不同。以下是一些常见的快捷键: 撤销(Undo): Windows/Linux: Ctrl + Z macOS: Command + Z 恢复(Redo): Windows/Linux: 阅读全文 »
posted @ 2024-01-21 18:31 龙陌 阅读(1130) 评论(0) 推荐(0) 编辑
摘要:后端返回的消息表示后端处理成功: 当后端接收到前端请求并成功处理后,通常会返回一个消息(例如,JSON 数据或其他形式的响应)。这个消息可能包含了成功的状态码、操作成功的提示信息等。这仅表示后端在处理请求时没有出现问题,并且已按照预期执行相应的操作。 前端逻辑完成后显示操作成功: 尽管后端返回操作成 阅读全文 »
posted @ 2024-01-21 18:26 龙陌 阅读(155) 评论(0) 推荐(0) 编辑
摘要:margin上边距下边距覆盖 首先,我们知道水平间距不会重合覆盖 但是,两个或多个块级盒子的垂直相邻边界会重合。 边界宽度结果的如下: 如果都是正值:相邻边界宽度中最大的值。 如果有一个负值:在最大的正边界中减去绝对值最大的负边界。 如果都是负值:从零中减去绝对值最大的负边界。 但是,事有例外,下面 阅读全文 »
posted @ 2024-01-21 18:24 龙陌 阅读(14) 评论(0) 推荐(0) 编辑
摘要:text-overflow:ellipsis 设置超出省略号不管用的原因可能是哪些 text-overflow: ellipsis 设置超出文本内容显示省略号(…)可能不管用的原因有以下几点: 容器宽度没有限制: text-overflow: ellipsis 与 overflow: hidden 阅读全文 »
posted @ 2024-01-21 17:53 龙陌 阅读(1368) 评论(0) 推荐(0) 编辑
摘要:注意 当鼠标悬浮在DOM元素上时,显示的宽度和高度通常是包含padding但不包含margin的。 这是因为padding表示元素内容和边框之间的空间,而margin则表示元素边框和周围元素之间的空间。 常用的,给div设置高度,然后使用padding设置空隙。 css margin和padding 阅读全文 »
posted @ 2024-01-21 17:49 龙陌 阅读(52) 评论(0) 推荐(0) 编辑
摘要:在vue3中什么场景应该封装hooks什么场景封装utils 在Vue 3中,Hooks和Utils分别适用于不同的场景: Hooks: Vue 3引入了Composition API,其中的setup()函数内可以定义和使用自定义hooks。 自定义hooks通常用于封装与组件状态、生命周期相关的 阅读全文 »
posted @ 2024-01-21 17:48 龙陌 阅读(731) 评论(0) 推荐(0) 编辑
摘要:CMS CMS是内容管理系统的缩写,全称为Content Management System。它是一种软件工具或平台,用于创建、编辑、组织和发布数字内容,如网站页面、文章、图片、视频等。 CMS的主要目的是简化内容管理过程,使非技术人员能够轻松管理和更新网站内容,而无需编写代码或了解复杂的技术知识。 阅读全文 »
posted @ 2024-01-21 16:56 龙陌 阅读(342) 评论(0) 推荐(0) 编辑
摘要:在前端JS开发中,通常的方法书写顺序如下: 变量声明和初始化 内部方法定义 外部方法定义 初始化函数 事件监听方法定义 用户触发的动作方法定义 这个顺序的主要目的是提高代码的可读性和可维护性。按照这个顺序,可以使代码更加清晰、易于理解和修改。 变量声明和初始化应该在前面,因为它们是代码中最基本的部分 阅读全文 »
posted @ 2024-01-21 16:03 龙陌 阅读(44) 评论(0) 推荐(0) 编辑
摘要:前端工具类utils和helpers的区别在于它们所提供的功能和使用场景。 通常来说,前端工具类utils是提供一些通用的方法,可以用于多个模块或组件之间的调用。工具类utils通常包含了一些常用的辅助方法,例如日期处理、字符串处理、数组操作、对象操作等等。它们的主要目的是为了提高代码复用性和简化代 阅读全文 »
posted @ 2024-01-20 13:39 龙陌 阅读(447) 评论(0) 推荐(0) 编辑
摘要:lodash 和 lodash-es 是 Lodash 库的两个不同的形式,主要区别在于它们的模块化和引入方式。 模块化: lodash: 是传统的 CommonJS 模块,可以使用 require 或者 import 来引入。 const _ = require('lodash'); // 或者 阅读全文 »
posted @ 2024-01-18 23:58 龙陌 阅读(4429) 评论(0) 推荐(1) 编辑
摘要:在 ECharts 折线图中,当 x 轴的文字在左右边界位置显示不全时,可以尝试以下几种方法来解决: 调整容器大小: 确保图表容器(div)的宽度足够容纳所有 x 轴标签,或者根据实际情况动态设置容器宽度。 旋转标签文字: 使用 xAxis.axisLabel.rotate 属性来旋转标签,使其倾斜 阅读全文 »
posted @ 2024-01-15 00:23 龙陌 阅读(3640) 评论(0) 推荐(0) 编辑
摘要:下面是一个使用 SCSS 编写的 util,用于创建毛玻璃特效的背景图片,并确保文字不被遮挡。该 util 使用 ::before 伪元素来创建毛玻璃效果,同时在伪元素上添加文字,以确保文字显示在图片上方。 @mixin glassBackground($imageUrl, $textColor: 阅读全文 »
posted @ 2024-01-14 23:00 龙陌 阅读(46) 评论(0) 推荐(0) 编辑
摘要:TDD(Test-Driven Development)是一种软件开发方法,其中开发人员在编写实际代码之前编写测试用例。TDD 的基本思想是在开发过程中先编写测试,然后编写足够的代码来通过这些测试。 TDD 的一般流程通常包括以下阶段: 编写测试用例(Test): 开发人员首先编写一个测试用例,该用 阅读全文 »
posted @ 2024-01-14 13:43 龙陌 阅读(87) 评论(0) 推荐(0) 编辑
摘要:在写css样式的时候,hover,active,focus等先后顺序应该是什么样的 在CSS样式表中,当针对链接或者按钮等元素设置不同状态(如hover、active、focus)时,推荐的书写顺序是按照它们之间覆盖关系和用户交互的逻辑顺序进行排列。以下是一般情况下建议的顺序: /* 链接的基本样式 阅读全文 »
posted @ 2024-01-13 22:58 龙陌 阅读(284) 评论(0) 推荐(0) 编辑
摘要:js中的对象,如果赋值给多个变量,那么会有性能问题吗? 在JavaScript中,将一个对象赋值给多个变量时,并不会直接导致性能问题。当一个对象被赋值给多个变量时,实际上这些变量都会引用同一个对象,即它们指向内存中的同一块地址。这种行为称为“对象引用”。 例如: const obj = { a: 1 阅读全文 »
posted @ 2024-01-12 22:15 龙陌 阅读(104) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示