You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular报错TS2339:类型'CampaignComponent'不存在属性'onSubmit'如何解决?

错误原因

你遇到的TS2339: Property 'onSubmit' does not exist on type 'CampaignComponent'报错,是因为你在campaign.component.html的表单标签上绑定了(ngSubmit)="onSubmit(userPost.value)"提交事件,但对应的CampaignComponent类中没有定义同名的onSubmit方法,TypeScript编译阶段的类型校验检测到缺失对应属性就抛出了该错误。

解决方法

你只需要在campaign.component.ts的CampaignComponent类中添加onSubmit方法即可,修改后的完整ts代码如下:

import { Component, OnInit } from '@angular/core';
import { GetServiceService } from '../get-service.service';

@Component({
  selector: 'app-campaign',
  templateUrl: './campaign.component.html',
  styleUrls: ['./campaign.component.css'],
})
export class CampaignComponent implements OnInit {
  campaigns;
  constructor(private campaignService: GetServiceService) {}

  ngOnInit(): void {
    this.campaigns = this.campaignService.getCampaign();
  }

  // 新增onSubmit方法处理表单提交逻辑
  onSubmit(formValue: {name: string}) {
    // 此处编写提交表单数据的业务逻辑,比如调用服务接口发送数据到后端API
    console.log('表单提交的内容:', formValue);
    // 若你的服务中已经封装了提交Campaign的接口,可以按下方示例调用
    // this.campaignService.addCampaign(formValue).subscribe(result => {
    //   console.log('提交成功', result);
    //   // 可以在这里补充重置表单、刷新Campaign列表的逻辑
    // })
  }
}

添加完成后重新执行ng serve启动项目即可正常运行,表单提交时会触发该方法执行你定义的提交逻辑。


内容的提问来源于stack exchange,提问作者Dragonarc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 18:09:03