写操作后原地重新拉取列表时,search 参数被写死成缺省的空串:搜索框里还显示着 用户输入的关键字,列表却退回全量。用户会把全量列表当成筛选结果,接下来的作废/ 删除操作就打在被误认的那一条上。store 层一直有这个缺陷却没被拦住,因为页面 那层没有测试。 修法照 stock.js / approval.js 已有的约定(store 存一份 filters,写操作原地刷新 时取出来用): - materials.js:编辑/作废/恢复沿用 search 和 status - users.js:编辑/删除沿用 search - 新增走反方向,清空筛选并回第 1 页:新建的项不一定匹配当前关键字,沿用搜索 就看不见它,用户会以为没建成功。物料按 id 倒序,回第 1 页正好能看见 - Materials.vue / Users.vue:新增成功后把搜索框一起清空,否则 store 清了筛选而 搜索框没清,同样是表里不一 测试补 14 条(两个 store + 两个页面)。全部做过变异验证:把实现改回原样后, 6 条 store 断言和 2 条页面断言确实变红,且只有它们变红。 |
||
|---|---|---|
| .. | ||
| node_modules | ||
| src | ||
| .dockerignore | ||
| Dockerfile | ||
| index.html | ||
| nginx.conf | ||
| package-lock.json | ||
| package.json | ||
| vite.config.js | ||
| vitest.config.js | ||