-
通过PrimeNG<p-table>的[(selection)]双向绑定,可自动同步用户选中的行数据到组件属性,无需手动从模板传参,点击按钮时直接访问该属性即可调用处理函数。
-
Jest是JavaScript中流行的单元测试框架,支持简洁的测试编写与强大的Mock功能;2.通过test()和expect()可编写基础单元测试,使用toBe、toEqual等匹配器进行断言;3.利用jest.fn()创建函数级Mock,验证调用情况、参数及设定返回值;4.使用jest.mock()替换整个模块,隔离外部依赖如API请求;5.支持自动Mock和在__mocks__目录下定义手动Mock文件,提升测试可控性与速度;6.合理应用Mock技术能有效提高代码可靠性与维护性。
-
height:100%在移动端常失效,因其依赖父容器明确高度,而html/body在滚动或iOS地址栏变化时无法稳定撑满视口;min-height:100dvh更可靠,但软键盘弹出时需JS动态修正--vh变量,并配合flex布局与合理定位避免继承陷阱。
-
a:hover伪类用于定义鼠标悬停时链接的样式,通过设置颜色、下划线、背景色等属性提升交互体验,结合transition和transform可实现平滑动画效果,同时需注意a:link、a:visited、a:active和:focus的LVHA顺序以确保样式优先级正确,避免特异性冲突、性能损耗和无障碍问题,推荐使用transform和opacity优化动画性能,并保持效果简洁自然,以提升用户体验且符合可访问性标准。
-
垂直居中用align-items:center(flex)或place-items:center(grid);父容器须设display:flex/grid和明确高度(如min-height:100vh),否则居中失效。
-
要正确打包CSS需使用css-loader和style-loader:前者解析CSS语法,后者将样式注入DOM。安装webpack、css-loader、style-loader及file-loader后,在webpack.config.js中配置module.rules,确保test匹配.css文件且use顺序为['style-loader','css-loader'],file-loader处理静态资源并输出至assets目录。在src/index.js中导入CSS文件,运行npmrunbuild生成
-
使用fr单位和minmax()函数可统一按钮尺寸:通过grid-template-columns:repeat(auto-fit,minmax(120px,1fr))确保每列在120px最小宽与等比伸缩间平衡,结合width:100%、固定padding和box-sizing:border-box的按钮样式,使按钮在不同屏幕下保持一致外观,实现响应式布局中的尺寸协调。
-
使用CSS动画可实现border-radius平滑变化,通过@keyframes定义从0或小值到50%的圆角过渡,配合animation-timing-function控制缓动,适用于按钮悬停、加载动画等场景。
-
使用fr单位可让CSSGrid子元素按比例分配空间。例如grid-template-columns:1fr2fr1fr将容器分为1:2:1三列,中间占一半;fr可与px混合,如200px1fr实现侧边栏+自适应主区;结合repeat(auto-fit,minmax(150px,1fr))创建响应式卡片网格;用minmax(100px,1fr)限制最小宽度同时保持比例,灵活应对不同屏幕尺寸。
-
取消拖拽时默认半透明效果需调用event.dataTransfer.setDragImage()自定义拖拽影像,因原元素已脱离渲染流,CSS无法覆盖;传入元素须已挂载DOM,设置pointer-events:none,并指定合理偏移坐标。
-
Promise.all的核心优势在于并行执行多个独立异步任务,显著提升效率;1.它允许同时触发多个Promise,总耗时取决于最慢任务;2.结果按输入顺序返回,确保数据一致性;3.适用于无依赖的数据聚合场景,如页面初始化加载用户信息、订单和通知;4.支持批量操作,如文件上传和数据迁移;5.可通过包装Promise或使用Promise.allSettled管理错误,获取所有结果状态;6.可结合Promise.race设置超时机制,避免无限等待。
-
ServiceWorker是运行在浏览器后台、独立于主线程的JavaScript脚本,用于拦截请求、管理缓存、推送通知并实现离线体验;它不是普通页面脚本(无法操作DOM),也不是服务器端Node.js服务。
-
应将重复的hover效果抽离为公共工具类(如.u-hover-effect),统一设置transition与基础交互行为,再通过组合语义化修饰类(如.btn-primary、.card-lift)实现差异化表现,配合BEM命名与Sassmixin提升可维护性。
-
模板字面量是JavaScript中唯一支持多行、表达式嵌入、标签函数和原始字符串解析的字符串构造机制,必须用反引号定义,支持运行时表达式求值、标签函数拦截及String.raw原始解析。
-
同一CSS颜色值在不同屏幕显示效果不同,因其RGB数值需映射到各设备独有的色彩空间(如sRGB、DCI-P3),而设备色域、白点、gamma等参数各异,且浏览器色彩管理支持不一。