首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
贪玩的小狐狸在等offer
2024-06-05 14:37
门头沟学院 前端工程师
关注
已关注
取消关注
暑期实习结束了
最后拒掉了抖音电商,感觉没概率转正
选了美团一个核心部门,转正比较稳,准备暑期拿一个保底的offer备战秋招😁
全部评论
推荐
最新
楼层
asaka003
南京大学 golang
一样😭,没转正太伤了
3
回复
分享
发布于 2024-06-05 15:11
江苏
牛客978371801号
清华大学 管理咨询
抖音电商什么方向呀,为什么抖音电商的hr跟我说有70-80
点赞
回复
分享
发布于 2024-06-12 23:57
北京
还没有回复哦~
相关推荐
2024-12-04 23:32
门头沟学院 算法工程师
秋招:求问科大讯飞研究院——苏州的工作强度、环境、氛围咋样呀?
感觉网上讯飞苏州的消息很少,求分享#ai智能作图#
投递科大讯飞等公司9个岗位
ai智能作图
点赞
评论
收藏
分享
2024-12-06 17:45
网易互娱_前端开发(准入职员工)
写demo的习惯不要带到职场上去
很多同学在学校里写玩具写习惯了,如果在实际工程开发中,有一些需要额外注意的点。多关注一下边界值的一些展现形态例如一个弹窗或者提示区的内容是通过后端获取的,需要确定获取失败时展示,和待加载时的交互和展示态,必须要让用户在点击按钮时触发loading来知道系统已经进入处理阶段,同时可以在请求返回结果前禁用按钮,否则用户可能会多次进行点击触发多次请求。如果你想写一个列表/表格,那么首先考虑的就是分页问题,如果这个列表是通过查询得来的,那么应该考虑防抖节流的问题。如果这个列表可以通过tab去切换,那么你必须要处理用户同时点击多个tab的情况,需要保证最后列表所展示的是用户最后点击的tab。如果列表项展示的是string,那么需要考虑其展示逻辑,比如说数字的精度,文字的长度,访问具体字段时,是否有可能在undefined或者null上取值触发报错。在取tab项特殊code的时候,建议使用枚举来避免硬编码,这样便于case值发生更改值不用进行查找和一个个替换。1. 异步数据加载与交互状态管理弹窗、提示区、列表、表格等组件,涉及到后端数据获取时,可能出现以下几种情况:异步请求失败时的展示错误展示:当数据获取失败时,要确保用户能收到明确的错误信息。可以展示友好的错误提示(例如:网络错误、服务器错误等),并给用户重试的选项。if (error) { return 加载失败,请重试。;}状态反馈:对于请求失败的场景,可以使用不同的状态反馈机制,如“重试”按钮,或在弹窗中显示一个带有错误信息的图标。待加载时的交互和展示Loading 状态:在数据请求期间,使用 loading 指示器让用户知道数据正在加载。这可以是一个旋转的加载动画、进度条或其他交互提示。确保用户能在点击按钮后看到反馈,避免因延迟而不清楚系统状态。return loading ? : ;占位符:展示内容之前,可以使用占位符(Skeleton loader)来模拟数据加载的过程,提升用户体验。jreturn loading ? : ;2. 分页与防抖、节流当处理分页或动态列表时,尤其是涉及到异步查询和用户操作时,有很多细节需要注意。分页处理分页状态管理:如果列表的数据量较大,需要考虑分页功能,避免一次性加载所有数据,减少性能压力。分页信息(如当前页码、每页条数)需要存储在状态中,并确保在分页时正确更新列表。UI 提示:在分页加载时,要考虑为用户提供页码信息、加载提示以及分页的上一页/下一页控制。防抖与节流防抖:用户在分页、查询、搜索等操作时,可能频繁触发请求,这时候需要使用防抖(Debounce)来延迟请求,避免每次输入都发送请求,提升性能。const handleSearch = debounce((query) => { // 发起搜索请求}, 300);节流:对于频繁的事件(如滚动、窗口尺寸变化等),使用节流(Throttle)可以限制事件触发频率,减少不必要的请求和计算。const handleScroll = throttle((event) => { // 处理滚动事件}, 200);3. Tab 切换与并发操作如果一个页面有多个 tab 选项,切换 tab 后,可能会引发一些需要特别处理的交互问题。多 Tab 切换的防冲突处理当前选中 Tab 管理:每次切换 Tab 时,确保最新的 tab 选项保持为当前选中状态,避免数据错误。通过 useState 管理当前选中的 tab。避免并发请求冲突:如果多个 Tab 触发了并发请求,需要确保最后请求返回的数据被正确展示,并避免数据的乱序展示。可以通过 useEffect 中的依赖数组和状态管理来确保数据更新正确。const [activeTab, setActiveTab] = useState(0);const [data, setData] = useState([]);useEffect(() => { fetchDataForTab(activeTab);}, [activeTab]);4. 列表项展示和字段安全当展示列表项时,需要注意以下一些常见问题:数字精度处理浮点数精度:当列表项显示数字时,特别是涉及到金额、百分比等精确数据时,确保精度正确,避免浮动误差。js 代码解读复制代码const formatNumber = (num) => num.toFixed(2);文字长度与显示文字超长处理:长文本需要进行处理,避免溢出或布局错乱。可以使用 CSS 的 text-overflow: ellipsis 来截断过长文本,或者根据需要动态生成可展开的省略符。.text-container { white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}字段访问的安全性访问 undefined 或 null 时避免错误:在访问嵌套对象的属性时,必须考虑属性可能为 undefined 或 null 的情况。可以使用可选链 ?. 来避免错误,或者进行显式的 null 检查。js 代码解读复制代码const userInfo = user?.address?.street || "未知";5. 枚举与常量使用对于一些固定的状态、类型、选项等值,建议使用枚举或常量来避免硬编码,提升代码可维护性和可读性。Tab 选项枚举当 tab 项目较多时,使用枚举(Enum)来管理常量值,避免频繁修改字符串或值:const TabTypes = { GENERAL: 'general', DETAILS: 'details', SETTINGS: 'settings'};const [activeTab, setActiveTab] = useState(TabTypes.GENERAL);避免硬编码对于一些特定的状态、分类值等,应该将其提取为常量或枚举,使得代码更易维护。const Status = { SUCCESS: 'success', ERROR: 'error', PENDING: 'pending'};6. 用户输入验证与防止恶意输入在处理用户输入时,尤其是表单数据、搜索框等,需要做好输入验证和数据清洗。输入长度限制与格式检查输入长度限制:确保输入内容不超长,避免界面布局或性能问题。使用前端验证和后端验证双重保障。if (input.length > 100) { alert("输入过长,请限制在100字符以内");}防止 SQL 注入和 XSS 攻击防止 XSS:如果用户输入的内容会直接渲染到页面中,要做相应的转义处理,避免恶意脚本的执行。const escapeHtml = (str) => { const element = document.createElement('div'); if (str) element.innerText = str; else element.textContent = str; return element.innerHTML;};7. 键盘和触摸事件支持键盘操作支持:特别是在移动端或有特殊需求的项目中,考虑键盘交互(如 Enter 键提交、Esc 键关闭弹窗等)。useEffect(() => { const handleKeyDown = (e) => { if (e.key === 'Escape') { closeModal(); } }; window.addEventListener('keydown', handleKeyDown); return () => { window.removeEventListener('keydown', handleKeyDown); };}, []);触摸事件支持:对于触摸屏设备,考虑替换或支持触摸事件,如 touchstart, touchend,以及确保页面在触摸设备上的交互流畅。8. 滚动和加载更多对于长列表、无限滚动等情况,需要优化滚动和加载行为。滚动加载更多检测滚动位置:当用户滚动到页面底部时,触发更多数据的加载。可以结合节流来减少滚动事件的触发频率。const handleScroll = () => { if (window.innerHeight + document.documentElement.scrollTop === document.documentElement.offsetHeight) { // 加载更多数据 }};#前端# #实习##ai智能作图#
前端小圆:
用了这个ai作图 不仅吞内容 而且删除不掉 前端给我出来背锅
ai智能作图
点赞
评论
收藏
分享
2024-12-01 09:14
门头沟学院 嵌入式工程师
科大讯飞感谢信,简历挂 #你都收到了哪些公司的感谢信?#
你都收到了哪些公司的感谢信?
点赞
评论
收藏
分享
2024-12-13 21:49
香港理工大学 算法工程师
美团算法实习招聘
岗位要求:1.大学本科及以上学历,计算机、数学、统计学等相关专业;2.对算法和数据挖掘领域有浓厚的兴趣,熟悉常用的数据挖掘和机器学习算法,了解因果推断技术、运筹优化算法、机制设计等;3.熟练掌握至少一种编程语言,如Python、Java等,并具备良好的编程能力;4.具备良好的数学分析能力和逻辑思维能力,能够独立解决问题;5.具备较强的团队合作精神和沟通能力,能够有效协作完成团队项目;
投递美团等公司9个岗位
点赞
评论
收藏
分享
2024-12-26 11:54
广东工业大学 算法工程师
平安产险科技
沟通完了Offer意向,比我想象中要好很多,HR介绍了近几年的校招生成长路径,我觉得和我自己的情况还是蛮吻合的,听说接下来还有校招生的活动,不确定啥时候开始!已经很期待了#平安产险科技中心求职汇总#
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
3
收藏
分享
评论
提到的真题
返回内容
全站热榜
1
...
实习期,因为git不熟练,我被diss了
1.8W
2
...
快手校招卡试用期不给过
1.3W
3
...
秋招offer选择,来不及了
5051
4
...
转2012竟然泡出来了
4825
5
...
【有奖互动】领导说你卡点到,你会如何高情商回答
4125
6
...
2025 知性 爱己
3179
7
...
发现了自己学生思维消失的瞬间!
2878
8
...
阿里被裁,找了web3.0远程工作
2878
9
...
在大厂,我见到的,低阶与高阶的思维差异
2028
10
...
贝壳java面试,二面挂
1877
正在热议
#
2025,我想......
#
7669次浏览
118人参与
#
我的简历长这样
#
2061340次浏览
28000人参与
#
夸一夸2024年的自己
#
8343次浏览
106人参与
#
秋招前后对offer的期望对比
#
192986次浏览
1448人参与
#
职场高情商速成班
#
269次浏览
7人参与
#
小米求职进展汇总
#
634903次浏览
4947人参与
#
实习,投递多份简历没人回复怎么办
#
2635524次浏览
36170人参与
#
你的实习什么时候入职
#
84333次浏览
914人参与
#
简历被挂麻了,求建议
#
2757532次浏览
35052人参与
#
投递实习岗位前的准备
#
1277941次浏览
19243人参与
#
我的工作日记
#
34114次浏览
498人参与
#
工作中,你有没有遇到非常爱骂人的领导?
#
7415次浏览
74人参与
#
当你面对裁员会如何?
#
58237次浏览
425人参与
#
校招入职后的感受
#
182126次浏览
2134人参与
#
快手求职进展汇总
#
453876次浏览
5375人参与
#
选择和努力,哪个更重要?
#
28903次浏览
307人参与
#
职场吐槽大会
#
107351次浏览
869人参与
#
我的OC时间线
#
179229次浏览
1182人参与
#
投了多少份简历才上岸
#
252282次浏览
2866人参与
#
我在牛客求捞
#
7874次浏览
57人参与
牛客网
牛客企业服务