跨端布局先分清视口和状态边界
·
跨端布局先分清视口和状态边界

窄屏隐藏一个按钮只是布局选择,不是权限控制。用户改一条 CSS、直接调用接口,都会绕过前端的视觉隐藏。组件是否显示可以由权限状态决定,真正的授权必须在服务端每次请求时完成。
function ExportAction({ allowed }: { allowed: boolean }) {
if (!allowed) return null;
return <button type="button">导出</button>;
}
不要把权限集合写进浏览器可修改的静态配置里,也不要因为按钮未渲染就省掉 API 鉴权。响应式样式只管排版:桌面可以显示工具栏,手机可以收进菜单;两种入口都调用同一条受服务端保护的能力。测试时至少覆盖无权限用户直接请求、权限切换和不同视口三类情况。
更多推荐



所有评论(0)