publishLongArticle 之前把专栏/专访/帖子/问吧/实践五种类型的表单全挤在一个文件里, 字段、校验规则、官方账号/管理员身份判断混在一起,改一个类型容易牵连到别的类型。 按类型拆成 components/ 下的 PostForm、ColumnForm、InterviewForm、QuestionForm、 PracticeForm,每个组件独立维护自己完整的抽屉表单(字段、校验、发布时间/IP信息、 提交数据、编辑回显),文件开头写清楚了这个类型的特殊规则(比如帖子封面图什么时候 必填、专栏独有的"同步同事吧"、问吧/实践用图片不用封面图、实践没有推送等)。外层 index.vue 只保留标题/内容编辑器、抽屉壳子和提交/回显的整体编排。 顺带把 api/article/types.ts 里跟实际请求对不上的类型补全了:AddOrUpdatePostDto 之前没声明推送字段,PushSettingBase.pushList 缺了 valueType,新增了 AddOrUpdateQuestionDto。
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| __tests__ | Loading commit data... | |
| api | Loading commit data... | |
| assets | Loading commit data... | |
| components/common | Loading commit data... | |
| constants | Loading commit data... | |
| directives | Loading commit data... | |
| hooks | Loading commit data... | |
| layoutCulture | Loading commit data... | |
| plugins | Loading commit data... | |
| router | Loading commit data... | |
| stores | Loading commit data... | |
| style | Loading commit data... | |
| utils | Loading commit data... | |
| views | Loading commit data... | |
| App.vue | Loading commit data... | |
| config.ts | Loading commit data... | |
| main.ts | Loading commit data... |