Skip to content

不要将非业务类型迁移到类型项目内,特别是表单弹框组件类型

比如这个类型:

ts
// apps\type\src\business\property-manage\report-manage\repair-reports-summary-table.ts
/**
 * 报修汇总表表单属性
 * Repair reports summary table form props
 */
export interface RepairReportsSummaryTableFormProps {
	/** 表单数据 Form data */
	form: RepairReportsSummaryTableFormData;
	/** 表单组件重置时默认使用的对象 Default object used when form component is reset */
	defaultValues: RepairReportsSummaryTableFormData;
	/** 表单模式 Form mode */
	mode?: "add" | "edit" | "info";
}

对于形如 xxxxxxFormProps 格式的类型,这些类型都是表单弹框类型,不是业务类型,你不应该将弹框组件的类型,迁移到类型项目内。

你应该将其从类型项目中删除,并根据业务路径,迁移回到对应的 form.ts 文件内。

正确的做法如下:

  1. 根据业务路径,迁移到对应的 form.ts 内。
  2. form.ts 内导入固定写法的 import { type Mode } from "@/composables/use-mode"; 类型。
  3. mode 字段的类型,统一换成 Mode 类型。
ts
// apps\admin\src\pages\property-manage\report-manage\repair-reports-summary-table\components\form.ts
import { type Mode } from "@/composables/use-mode";
/**
 * 报修汇总表表单属性
 * Repair reports summary table form props
 */
export interface RepairReportsSummaryTableFormProps {
	/** 表单数据 Form data */
	form: RepairReportsSummaryTableFormData;
	/** 表单组件重置时默认使用的对象 Default object used when form component is reset */
	defaultValues: RepairReportsSummaryTableFormData;
	/** 表单模式 Form mode */
	mode?: Mode;
}

请你将上述的标准,迁移更新到以下文件内:

  1. .claude\agents\fix-type-error.md
  2. openspec\changes\migrate-static-data-to-nitro-query\specs\type-system\spec.md

增加了新的标准和规范后,请运行 openspec 的规范检查文件,确保规范文件满足格式要求。

贡献者

The avatar of contributor named as ruan-cat ruan-cat

页面历史

最近更新