Install any skill in seconds. Free to start, no credit card required.
Get Started Free →前端修改安全约束。当用户修改 Vue/React 组件、调整页面布局、创建覆盖层/蒙版组件时激活。提供数据绑定保护、布局一致性规范、覆盖层定位规范。
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 20% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 89% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 24% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 79% | 0% |
<instructions>
修改 Vue/React 文件时,必须遵守以下规则,防止破坏已有功能。
| 类型 | 说明 | 示例 | |------|------|------| | 数据绑定 | v-model / v-bind 的字段名 | v-model="form.username" | | Props | props 定义和传递的属性名 | :user-id="userId" | | 事件 | emit 事件名和 @ 绑定 | @click="handleSubmit" | | 响应式变量 | ref / reactive 变量名 | const loading = ref(false) | | API 调用 | 接口路径、参数、响应处理 | api.getUser(id) | | 类型定义 | TypeScript interface/type | interface User { ... } | | 函数名 | 已有的方法和函数名 | function handleSubmit() |
| 类型 | 说明 | 示例 | |------|------|------| | 布局结构 | div / el-row / el-col 层级 | 减少嵌套层级 | | 布局组件 | Element Plus 布局相关属性 | span / gutter / justify | | CSS 样式 | style 中的样式代码 | padding / margin / flex | | 样式类名 | 纯样式用途的 class | class="container" | | 包裹元素 | 不影响逻辑的外层容器 | 添加/移除布局用的 div |
解决“按钮跳动”、“垂直堆叠”和“横向挤压”问题。
grid-template-columns 预定义列宽(如 grid-template-columns: 40px minmax(200px, 1fr) 100px 120px auto;)。margin-left: auto 强制推向行末,或占据 Grid 的最后一列。:style 注入关键布局。whiteSpace),字符串值必须带引号(如 'nowrap'),并视情况添加 !important。解决“图标不居中”、“样式脱靶”和“风格不统一”问题。
.menu.el-menu--collapse 修改当前节点。.menu :deep(.el-menu-item) 穿透修改子节点。padding 和 margin 偏移。margin: 4px auto 强制居中。解决“点击无反应”、“事件丢失”、“TS 编译错误”及“幻觉属性”问题。
read_file 子组件确认 defineEmits 中的真实键名。grep_search 父组件确认所有引用点。@test 盲目修正为 @test-model,除非已核实两者完全对齐。user.nickname、item.config.url)之前,必须使用 read_file 或 grep_search 核实相关的 interface / type 定义。.ts 文件)及后端契约,最后再修改 Vue 模板。:style 时,严禁出现 white-space: nowrap(连字符语法在对象中是非法的),必须转换为 whiteSpace: 'nowrap'。write_file,确保符号 ${} 不被误解析。遇到布局异常或用户反馈“挤在一起/没反应”时:
div,让 Flex/Grid 直接作用于核心交互元素。flex-nowrap 是否导致溢出,必要时切换为 flex-wrap 或使用 overflow-x: auto。修改前端组件前,必须确认:
data.xxx)是否已在 types 接口中被明确定义,严禁直觉猜测。@event 与子组件 emit('event') 命名称是否 100% 匹配。:style,属性名是否为驼峰,值是否已加引号,无语法错误。item.api_key)是否有空值兜底,防止渲染崩溃。... 占位符。</instructions>
Other measured skills in the registry, with their headline benchmark lift.